From d9a8c2a2cadee0026a0bee31dcdd780ccf204e0b Mon Sep 17 00:00:00 2001 From: Nasser Anssari Date: Wed, 29 May 2024 18:09:41 +0300 Subject: [PATCH] feat: update code to v.4.1.1 (#71) --- .../sdk/rapid/client/rapidClient.kt | 233 ++++++++++++++++-- .../operations/ChangeRoomDetailsOperation.kt | 6 + .../ChangeRoomDetailsOperationParams.kt | 27 ++ .../rapid/operations/CommitChangeOperation.kt | 6 + .../operations/CommitChangeOperationParams.kt | 27 ++ .../operations/DeleteHeldBookingOperation.kt | 5 + .../DeleteHeldBookingOperationParams.kt | 22 ++ .../rapid/operations/DeleteRoomOperation.kt | 5 + .../operations/DeleteRoomOperationParams.kt | 26 ++ .../GetAdditionalAvailabilityOperation.kt | 5 + ...etAdditionalAvailabilityOperationParams.kt | 58 +++++ .../operations/GetAvailabilityOperation.kt | 6 + .../GetAvailabilityOperationParams.kt | 94 +++++++ .../GetCalendarAvailabilityOperation.kt | 6 + .../GetCalendarAvailabilityOperationParams.kt | 18 ++ .../operations/GetChainReferenceOperation.kt | 6 + .../GetChainReferenceOperationParams.kt | 22 ++ .../GetInactivePropertiesOperation.kt | 6 + .../GetInactivePropertiesOperationParams.kt | 30 +++ .../operations/GetPaymentOptionsOperation.kt | 5 + .../GetPaymentOptionsOperationParams.kt | 18 ++ .../GetPropertyCatalogFileOperation.kt | 6 + .../GetPropertyCatalogFileOperationParams.kt | 30 +++ .../GetPropertyContentFileOperation.kt | 6 + .../GetPropertyContentFileOperationParams.kt | 30 +++ .../operations/GetPropertyContentOperation.kt | 6 + .../GetPropertyContentOperationParams.kt | 106 ++++++++ .../GetPropertyGuestReviewsOperation.kt | 5 + .../GetPropertyGuestReviewsOperationParams.kt | 30 +++ .../rapid/operations/GetRegionOperation.kt | 5 + .../operations/GetRegionOperationParams.kt | 38 +++ .../rapid/operations/GetRegionsOperation.kt | 6 + .../operations/GetRegionsOperationParams.kt | 62 +++++ .../GetReservationByItineraryIdOperation.kt | 5 + ...ReservationByItineraryIdOperationParams.kt | 30 +++ .../operations/GetReservationOperation.kt | 6 + .../GetReservationOperationParams.kt | 26 ++ .../operations/PostGeographyOperation.kt | 7 + .../PostGeographyOperationParams.kt | 31 +++ .../operations/PostItineraryOperation.kt | 7 + .../PostItineraryOperationParams.kt | 19 ++ .../PostPaymentSessionsOperation.kt | 7 + .../PostPaymentSessionsOperationParams.kt | 19 ++ .../rapid/operations/PriceCheckOperation.kt | 5 + .../operations/PriceCheckOperationParams.kt | 30 +++ .../PutCompletePaymentSessionOperation.kt | 5 + ...utCompletePaymentSessionOperationParams.kt | 22 ++ .../operations/PutResumeBookingOperation.kt | 5 + .../PutResumeBookingOperationParams.kt | 22 ++ .../RequestTestNotificationOperation.kt | 7 + .../RequestTestNotificationOperationParams.kt | 19 ++ ...equestUndeliveredNotificationsOperation.kt | 6 + ...UndeliveredNotificationsOperationParams.kt | 22 ++ 53 files changed, 1239 insertions(+), 22 deletions(-) diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/client/rapidClient.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/client/rapidClient.kt index 3ef103c519..06e2ce4e69 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/client/rapidClient.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/client/rapidClient.kt @@ -87,6 +87,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat contentType(ContentType.Application.Json) setBody(operation.requestBody) } + throwIfError(response, operation.operationId) Response(response.status.value, response.body(), response.headers.entries()) }.get() @@ -95,6 +96,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Change details of a room. + * This link will be available in the retrieve response. Changes in smoking preference and special request will be passed along to the property and are not guaranteed. + * @param operation [ChangeRoomDetailsOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Nothing + */ fun execute(operation: ChangeRoomDetailsOperation): Response { return execute< ChangeRoomDetailsRequest, @@ -192,6 +200,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Commit a change of itinerary that may require additional payment or refund. + * This link will be available in the change response to confirm and complete the change transaction. If additional charges are due, a payment must be submitted with this request. Note that Two-Factor Authentication is not supported at this time. + * @param operation [CommitChangeOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Nothing + */ fun execute(operation: CommitChangeOperation): Response { return execute< CommitChangeRoomRequestBody, @@ -289,6 +304,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Cancel Held Booking + * This link will be available in a held booking response. + * @param operation [DeleteHeldBookingOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Nothing + */ fun execute(operation: DeleteHeldBookingOperation): Response { return execute< Nothing, @@ -374,6 +396,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Cancel a room. + * This link will be available in the retrieve response. + * @param operation [DeleteRoomOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Nothing + */ fun execute(operation: DeleteRoomOperation): Response { return execute< Nothing, @@ -465,6 +494,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Get additional property room rates and availability + * Returns additional rates on available room types, using the parameters of the previous call. The response includes rate details such as promos, whether the rate is refundable, cancellation penalties and a full price breakdown to meet the price display requirements for your market. _Note_: If there are no available rooms, the response will be an empty array. * The `nightly` array includes each individual night's charges. When the total price includes fees, charges, or adjustments that are not divided by night, these amounts will be included in the `stay` rate array, which details charges applied to the entire stay (each check-in). + * @param operation [GetAdditionalAvailabilityOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: GetAdditionalAvailabilityOperation): Response> { return execute< Nothing, @@ -634,6 +670,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Get property room rates and availability + * Returns rates on available room types for specified properties (maximum of 250 properties per request). The response includes rate details such as promos, whether the rate is refundable, cancellation penalties and a full price breakdown to meet the price display requirements for your market. _Note_: If there are no available rooms, the response will be an empty array. * Multiple rooms of the same type may be requested by including multiple instances of the `occupancy` parameter. * The `nightly` array includes each individual night's charges. When the total price includes fees, charges, or adjustments that are not divided by night, these amounts will be included in the `stay` rate array, which details charges applied to the entire stay (each check-in). + * @param operation [GetAvailabilityOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: GetAvailabilityOperation): Response> { return execute< Nothing, @@ -875,6 +918,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Get a calendar of availability dates for properties. This is currently a Vrbo property only feature. + * Returns availability information for the specified properties (maximum of 25 properties per request). The response includes per day information about the property's availability, information about if check-in or check-out is available for the day, and information regarding the stay constraints. + * @param operation [GetCalendarAvailabilityOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: GetCalendarAvailabilityOperation): Response> { return execute< Nothing, @@ -954,6 +1004,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Chain Reference + * Returns a complete collection of chains recognized by the Rapid API.
Chains represent a parent company which can have multiple brands associated with it. A brand can only be associated with one chain. For example, Hilton Worldwide is a chain that has multiple associated brands including Doubletree, Hampton Inn and Embassy Suites.
The response is a JSON map where the key is the chain ID and the value is a chain object. Each chain object also contains a map of its related brands.
Note that the set of chain IDs and brand IDs are totally independent of one another. It is possible for a chain and a brand to both use the same number as their ID, but this is just a coincidence that holds no meaning.
Chain and brand names are provided in English only. + * @param operation [GetChainReferenceOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.Map + */ fun execute(operation: GetChainReferenceOperation): Response> { return execute< Nothing, @@ -1039,6 +1096,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Inactive Properties + * Request a list of properties that are inactive because they have been removed from sale since a specified date.

When there are a large number of properties in the response, it will be paginated. See the `Link` header in the 200 response section. + * @param operation [GetInactivePropertiesOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: GetInactivePropertiesOperation): Response> { return execute< Nothing, @@ -1074,12 +1138,6 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat return execute(operation) } - @JvmOverloads - fun getPaginator(operation: GetInactivePropertiesOperation): ResponsePaginator> { - val response = execute(operation) - return ResponsePaginator(this, response, emptyList()) { it.body>() } - } - /** * Inactive Properties * Request a list of properties that are inactive because they have been removed from sale since a specified date.

When there are a large number of properties in the response, it will be paginated. See the `Link` header in the 200 response section. @@ -1143,6 +1201,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } @JvmOverloads + fun getPaginator(operation: GetInactivePropertiesOperation): ResponsePaginator> { + val response = execute(operation) + return ResponsePaginator(this, response, emptyList()) { it.body>() } + } + + @JvmOverloads + @Deprecated("Use getPaginator method instead", ReplaceWith("getPaginator(operation: GetInactivePropertiesOperation)")) fun getInactivePropertiesPaginator( customerSessionId: kotlin.String? = null, since: kotlin.String? = null, @@ -1157,6 +1222,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } @JvmOverloads + @Deprecated("Use getPaginator method instead", ReplaceWith("getPaginator(operation: GetInactivePropertiesOperation)")) fun getInactivePropertiesPaginatorWithResponse( customerSessionId: kotlin.String? = null, since: kotlin.String? = null, @@ -1170,6 +1236,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat return ResponsePaginator(this, response, emptyList()) { it.body>() } } + /** + * Get Accepted Payment Types - EPS MOR Only + * Returns the accepted payment options. Use this API to power your checkout page and display valid forms of payment, ensuring a smooth booking. + * @param operation [GetPaymentOptionsOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type PaymentOption + */ fun execute(operation: GetPaymentOptionsOperation): Response { return execute< Nothing, @@ -1249,6 +1322,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Property Catalog File + * Returns a link to download the master list of EPS's active properties in the requested language. The response includes high-level details about each property.
This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is a subset of the schema of each JSON object from the Property Content call. The subset of fields included are: * property_id * name * address * ratings * location * phone * fax * category * rank * business_model * dates * statistics * chain * brand * supply_source
Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"supply_source\":\"expedia\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"supply_source\":\"expedia\"} ``` + * @param operation [GetPropertyCatalogFileOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Link + */ fun execute(operation: GetPropertyCatalogFileOperation): Response { return execute< Nothing, @@ -1286,7 +1366,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat /** * Property Catalog File - * Returns a link to download the master list of EPS's active properties in the requested language. The response includes high-level details about each property.
This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is a subset of the schema of each JSON object from the Property Content call. The subset of fields included are: * property_id * name * address * ratings * location * phone * fax * category * rank * business_model * dates * statistics * chain * brand * supply_source
Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"supply_source\":\"expedia\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"supply_source\":\"expedia\"} ``` + * Returns a link to download the master list of EPS's active properties in the requested language. The response includes high-level details about each property.
This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is a subset of the schema of each JSON object from the Property Content call. The subset of fields included are: * property_id * name * address * ratings * location * phone * fax * category * rank * business_model * dates * statistics * chain * brand * supply_source
Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"supply_source\":\"expedia\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"supply_source\":\"expedia\"} ``` * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. (optional) @@ -1314,7 +1394,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat /** * Property Catalog File - * Returns a link to download the master list of EPS's active properties in the requested language. The response includes high-level details about each property.
This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is a subset of the schema of each JSON object from the Property Content call. The subset of fields included are: * property_id * name * address * ratings * location * phone * fax * category * rank * business_model * dates * statistics * chain * brand * supply_source
Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"supply_source\":\"expedia\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"supply_source\":\"expedia\"} ``` + * Returns a link to download the master list of EPS's active properties in the requested language. The response includes high-level details about each property.
This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is a subset of the schema of each JSON object from the Property Content call. The subset of fields included are: * property_id * name * address * ratings * location * phone * fax * category * rank * business_model * dates * statistics * chain * brand * supply_source
Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"supply_source\":\"expedia\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"supply_source\":\"expedia\"} ``` * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. (optional) @@ -1346,6 +1426,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Property Content + * Search property content for active properties in the requested language.

When searching with query parameter, `property_id`, you may request 1 to 250 properties at a time.

When searching with query parameters other than `property_id`, the response will be paginated. See the `Link` header in the 200 response section.

The response is a JSON map where the key is the property ID and the value is the property object itself, which can include property-level, room-level and rate-level information. + * @param operation [GetPropertyContentOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.Map + */ fun execute(operation: GetPropertyContentOperation): Response> { return execute< Nothing, @@ -1419,12 +1506,6 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat return execute(operation) } - @JvmOverloads - fun getPaginator(operation: GetPropertyContentOperation): ResponsePaginator> { - val response = execute(operation) - return ResponsePaginator(this, response, emptyMap()) { it.body>() } - } - /** * Property Content * Search property content for active properties in the requested language.

When searching with query parameter, `property_id`, you may request 1 to 250 properties at a time.

When searching with query parameters other than `property_id`, the response will be paginated. See the `Link` header in the 200 response section.

The response is a JSON map where the key is the property ID and the value is the property object itself, which can include property-level, room-level and rate-level information. @@ -1618,6 +1699,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } @JvmOverloads + fun getPaginator(operation: GetPropertyContentOperation): ResponsePaginator> { + val response = execute(operation) + return ResponsePaginator(this, response, emptyMap()) { it.body>() } + } + + @JvmOverloads + @Deprecated("Use getPaginator method instead", ReplaceWith("getPaginator(operation: GetPropertyContentOperation)")) fun getPropertyContentPaginator( language: kotlin.String, supplySource: kotlin.String, @@ -1679,6 +1767,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } @JvmOverloads + @Deprecated("Use getPaginator method instead", ReplaceWith("getPaginator(operation: GetPropertyContentOperation)")) fun getPropertyContentPaginatorWithResponse( language: kotlin.String, supplySource: kotlin.String, @@ -1739,6 +1828,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat return ResponsePaginator(this, response, emptyMap()) { it.body>() } } + /** + * Property Content File + * Returns a link to download all content for all of EPS’s active properties in the requested language. The response includes property-level, room-level and rate-level information.
This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is the same as the schema of each JSON object from the Property Content call.
Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

You'll be asked to pay the following charges at the hotel:

  • Deposit: USD 50 per day
  • Resort fee: USD 29.12 per accommodation, per night
The hotel resort fee includes:
  • Fitness center access
  • Internet access
  • Phone calls
  • Additional inclusions

We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

\",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":20,\"square_feet\":215},\"views\":{\"4146\":{\"id\":\"4146\",\"name\":\"Courtyard view\"}},\"occupancy\":{\"max_allowed\":{\"total\":5,\"children\":2,\"adults\":4},\"age_categories\":{\"Adult\":{\"name\":\"Adult\",\"minimum_age\":9}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"AB-012-987-1234-01\",\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"spoken_languages\":{\"vi\":{\"id\":\"vi\",\"name\":\"Vietnamese\"}},\"multi_unit\":true,\"payment_registration_recommended\":false,\"vacation_rental_details\": {\"registry_number\": \"Property Registration Number 123456\",\"private_host\": \"true\",\"property_manager\": {\"name\": \"Victor\",\"links\": {\"image\": {\"method\": \"GET\",\"href\": \"https://test-image/test/test/836f1097-fbcf-43b5-bc02-c8ff6658cb90.c1.jpg\"}}},\"rental_agreement\": {\"links\": {\"rental_agreement\": {\"method\": \"GET\",\"href\": \"https://test-link.test.amazonaws.com/rentalconditions_property_d65e7eb5-4a7c-4a80-a8a3-171999f9f444.pdf\"}}},\"house_rules\": [\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\": {\"4296\": {\"id\": \"4296\",\"name\": \"Furnished balcony or patio\"},\"2859\": {\"id\": \"2859\",\"name\": \"Private pool\"}},\"vrbo_srp_id\": \"123.1234567.5678910\",\"listing_id\": \"1234567\",\"listing_number\": \"5678910\",\"listing_source\": \"HOMEAWAY_US\",\"listing_unit\": \"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838},\"obfuscated_coordinates\":{\"latitude\":28.339303,\"longitude\":-81.47791},\"obfuscation_required\":true},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":17},\"views\":{\"4134\":{\"id\":\"4134\",\"name\":\"City view\"}},\"occupancy\":{\"max_allowed\":{\"total\":3,\"children\":2,\"adults\":3},\"age_categories\":{\"ChildAgeA\":{\"name\":\"ChildAgeA\",\"minimum_age\":3}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"CD-012-987-1234-02\",\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"spoken_languages\":{\"en\":{\"id\":\"en\",\"name\":\"English\"}},\"multi_unit\":true,\"payment_registration_recommended\":true,\"vacation_rental_details\":{\"registry_number\":\"Property Registration Number 123456\",\"private_host\":\"true\",\"property_manager\":{\"name\":\"John Smith\",\"links\":{\"image\":{\"method\":\"GET\",\"href\":\"https://example.com/profile.jpg\"}}},\"rental_agreement\":{\"links\":{\"rental_agreement\":{\"method\":\"GET\",\"href\":\"https:/example.com/rentalconditions.pdf\"}}},\"house_rules\":[\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\":{\"2859\":{\"id\":\"2859\",\"name\":\"Private pool\"},\"4296\":{\"id\":\"4296\",\"name\":\"Furnished balcony or patio\"}},\"vrbo_srp_id\":\"123.1234567.5678910\",\"listing_id\":\"1234567\",\"listing_number\":\"5678910\",\"listing_source\":\"HOMEAWAY_US\",\"listing_unit\":\"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} ``` + * @param operation [GetPropertyContentFileOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Link + */ fun execute(operation: GetPropertyContentFileOperation): Response { return execute< Nothing, @@ -1776,7 +1872,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat /** * Property Content File - * Returns a link to download all content for all of EPS’s active properties in the requested language. The response includes property-level, room-level and rate-level information.
    This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is the same as the schema of each JSON object from the Property Content call.
    Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":20,\"square_feet\":215},\"views\":{\"4146\":{\"id\":\"4146\",\"name\":\"Courtyard view\"}},\"occupancy\":{\"max_allowed\":{\"total\":5,\"children\":2,\"adults\":4},\"age_categories\":{\"Adult\":{\"name\":\"Adult\",\"minimum_age\":9}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"AB-012-987-1234-01\",\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"spoken_languages\":{\"vi\":{\"id\":\"vi\",\"name\":\"Vietnamese\"}},\"multi_unit\":true,\"payment_registration_recommended\":false,\"vacation_rental_details\": {\"registry_number\": \"Property Registration Number 123456\",\"private_host\": \"true\",\"property_manager\": {\"name\": \"Victor\",\"links\": {\"image\": {\"method\": \"GET\",\"href\": \"https://test-image/test/test/836f1097-fbcf-43b5-bc02-c8ff6658cb90.c1.jpg\"}}},\"rental_agreement\": {\"links\": {\"rental_agreement\": {\"method\": \"GET\",\"href\": \"https://test-link.test.amazonaws.com/rentalconditions_property_d65e7eb5-4a7c-4a80-a8a3-171999f9f444.pdf\"}}},\"house_rules\": [\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\": {\"4296\": {\"id\": \"4296\",\"name\": \"Furnished balcony or patio\"},\"2859\": {\"id\": \"2859\",\"name\": \"Private pool\"}},\"vrbo_srp_id\": \"123.1234567.5678910\",\"listing_id\": \"1234567\",\"listing_number\": \"5678910\",\"listing_source\": \"HOMEAWAY_US\",\"listing_unit\": \"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838},\"obfuscated_coordinates\":{\"latitude\":28.339303,\"longitude\":-81.47791},\"obfuscation_required\":true},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":17},\"views\":{\"4134\":{\"id\":\"4134\",\"name\":\"City view\"}},\"occupancy\":{\"max_allowed\":{\"total\":3,\"children\":2,\"adults\":3},\"age_categories\":{\"ChildAgeA\":{\"name\":\"ChildAgeA\",\"minimum_age\":3}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"CD-012-987-1234-02\",\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"spoken_languages\":{\"en\":{\"id\":\"en\",\"name\":\"English\"}},\"multi_unit\":true,\"payment_registration_recommended\":true,\"vacation_rental_details\":{\"registry_number\":\"Property Registration Number 123456\",\"private_host\":\"true\",\"property_manager\":{\"name\":\"John Smith\",\"links\":{\"image\":{\"method\":\"GET\",\"href\":\"https://example.com/profile.jpg\"}}},\"rental_agreement\":{\"links\":{\"rental_agreement\":{\"method\":\"GET\",\"href\":\"https:/example.com/rentalconditions.pdf\"}}},\"house_rules\":[\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\":{\"2859\":{\"id\":\"2859\",\"name\":\"Private pool\"},\"4296\":{\"id\":\"4296\",\"name\":\"Furnished balcony or patio\"}},\"vrbo_srp_id\":\"123.1234567.5678910\",\"listing_id\":\"1234567\",\"listing_number\":\"5678910\",\"listing_source\":\"HOMEAWAY_US\",\"listing_unit\":\"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} ``` + * Returns a link to download all content for all of EPS’s active properties in the requested language. The response includes property-level, room-level and rate-level information.
    This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is the same as the schema of each JSON object from the Property Content call.
    Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":20,\"square_feet\":215},\"views\":{\"4146\":{\"id\":\"4146\",\"name\":\"Courtyard view\"}},\"occupancy\":{\"max_allowed\":{\"total\":5,\"children\":2,\"adults\":4},\"age_categories\":{\"Adult\":{\"name\":\"Adult\",\"minimum_age\":9}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"AB-012-987-1234-01\",\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"spoken_languages\":{\"vi\":{\"id\":\"vi\",\"name\":\"Vietnamese\"}},\"multi_unit\":true,\"payment_registration_recommended\":false,\"vacation_rental_details\": {\"registry_number\": \"Property Registration Number 123456\",\"private_host\": \"true\",\"property_manager\": {\"name\": \"Victor\",\"links\": {\"image\": {\"method\": \"GET\",\"href\": \"https://test-image/test/test/836f1097-fbcf-43b5-bc02-c8ff6658cb90.c1.jpg\"}}},\"rental_agreement\": {\"links\": {\"rental_agreement\": {\"method\": \"GET\",\"href\": \"https://test-link.test.amazonaws.com/rentalconditions_property_d65e7eb5-4a7c-4a80-a8a3-171999f9f444.pdf\"}}},\"house_rules\": [\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\": {\"4296\": {\"id\": \"4296\",\"name\": \"Furnished balcony or patio\"},\"2859\": {\"id\": \"2859\",\"name\": \"Private pool\"}},\"vrbo_srp_id\": \"123.1234567.5678910\",\"listing_id\": \"1234567\",\"listing_number\": \"5678910\",\"listing_source\": \"HOMEAWAY_US\",\"listing_unit\": \"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838},\"obfuscated_coordinates\":{\"latitude\":28.339303,\"longitude\":-81.47791},\"obfuscation_required\":true},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":17},\"views\":{\"4134\":{\"id\":\"4134\",\"name\":\"City view\"}},\"occupancy\":{\"max_allowed\":{\"total\":3,\"children\":2,\"adults\":3},\"age_categories\":{\"ChildAgeA\":{\"name\":\"ChildAgeA\",\"minimum_age\":3}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"CD-012-987-1234-02\",\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"spoken_languages\":{\"en\":{\"id\":\"en\",\"name\":\"English\"}},\"multi_unit\":true,\"payment_registration_recommended\":true,\"vacation_rental_details\":{\"registry_number\":\"Property Registration Number 123456\",\"private_host\":\"true\",\"property_manager\":{\"name\":\"John Smith\",\"links\":{\"image\":{\"method\":\"GET\",\"href\":\"https://example.com/profile.jpg\"}}},\"rental_agreement\":{\"links\":{\"rental_agreement\":{\"method\":\"GET\",\"href\":\"https:/example.com/rentalconditions.pdf\"}}},\"house_rules\":[\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\":{\"2859\":{\"id\":\"2859\",\"name\":\"Private pool\"},\"4296\":{\"id\":\"4296\",\"name\":\"Furnished balcony or patio\"}},\"vrbo_srp_id\":\"123.1234567.5678910\",\"listing_id\":\"1234567\",\"listing_number\":\"5678910\",\"listing_source\":\"HOMEAWAY_US\",\"listing_unit\":\"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} ``` * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. (optional) @@ -1804,7 +1900,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat /** * Property Content File - * Returns a link to download all content for all of EPS’s active properties in the requested language. The response includes property-level, room-level and rate-level information.
    This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is the same as the schema of each JSON object from the Property Content call.
    Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":20,\"square_feet\":215},\"views\":{\"4146\":{\"id\":\"4146\",\"name\":\"Courtyard view\"}},\"occupancy\":{\"max_allowed\":{\"total\":5,\"children\":2,\"adults\":4},\"age_categories\":{\"Adult\":{\"name\":\"Adult\",\"minimum_age\":9}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"AB-012-987-1234-01\",\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"spoken_languages\":{\"vi\":{\"id\":\"vi\",\"name\":\"Vietnamese\"}},\"multi_unit\":true,\"payment_registration_recommended\":false,\"vacation_rental_details\": {\"registry_number\": \"Property Registration Number 123456\",\"private_host\": \"true\",\"property_manager\": {\"name\": \"Victor\",\"links\": {\"image\": {\"method\": \"GET\",\"href\": \"https://test-image/test/test/836f1097-fbcf-43b5-bc02-c8ff6658cb90.c1.jpg\"}}},\"rental_agreement\": {\"links\": {\"rental_agreement\": {\"method\": \"GET\",\"href\": \"https://test-link.test.amazonaws.com/rentalconditions_property_d65e7eb5-4a7c-4a80-a8a3-171999f9f444.pdf\"}}},\"house_rules\": [\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\": {\"4296\": {\"id\": \"4296\",\"name\": \"Furnished balcony or patio\"},\"2859\": {\"id\": \"2859\",\"name\": \"Private pool\"}},\"vrbo_srp_id\": \"123.1234567.5678910\",\"listing_id\": \"1234567\",\"listing_number\": \"5678910\",\"listing_source\": \"HOMEAWAY_US\",\"listing_unit\": \"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838},\"obfuscated_coordinates\":{\"latitude\":28.339303,\"longitude\":-81.47791},\"obfuscation_required\":true},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":17},\"views\":{\"4134\":{\"id\":\"4134\",\"name\":\"City view\"}},\"occupancy\":{\"max_allowed\":{\"total\":3,\"children\":2,\"adults\":3},\"age_categories\":{\"ChildAgeA\":{\"name\":\"ChildAgeA\",\"minimum_age\":3}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"CD-012-987-1234-02\",\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"spoken_languages\":{\"en\":{\"id\":\"en\",\"name\":\"English\"}},\"multi_unit\":true,\"payment_registration_recommended\":true,\"vacation_rental_details\":{\"registry_number\":\"Property Registration Number 123456\",\"private_host\":\"true\",\"property_manager\":{\"name\":\"John Smith\",\"links\":{\"image\":{\"method\":\"GET\",\"href\":\"https://example.com/profile.jpg\"}}},\"rental_agreement\":{\"links\":{\"rental_agreement\":{\"method\":\"GET\",\"href\":\"https:/example.com/rentalconditions.pdf\"}}},\"house_rules\":[\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\":{\"2859\":{\"id\":\"2859\",\"name\":\"Private pool\"},\"4296\":{\"id\":\"4296\",\"name\":\"Furnished balcony or patio\"}},\"vrbo_srp_id\":\"123.1234567.5678910\",\"listing_id\":\"1234567\",\"listing_number\":\"5678910\",\"listing_source\":\"HOMEAWAY_US\",\"listing_unit\":\"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} ``` + * Returns a link to download all content for all of EPS’s active properties in the requested language. The response includes property-level, room-level and rate-level information.
    This file is in JSONL format and is gzipped. The schema of each JSON object in the JSONL file is the same as the schema of each JSON object from the Property Content call.
    Example of a JSONL file with 2 properties: ``` {\"property_id\":\"12345\",\"name\":\"Test Property Name\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":false,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=12345\"},\"fr-FR\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=fr-FR&include=address&property_id=12345\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":48382,\"overall\":\"3.1\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"73%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838}},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":false},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":20,\"square_feet\":215},\"views\":{\"4146\":{\"id\":\"4146\",\"name\":\"Courtyard view\"}},\"occupancy\":{\"max_allowed\":{\"total\":5,\"children\":2,\"adults\":4},\"age_categories\":{\"Adult\":{\"name\":\"Adult\",\"minimum_age\":9}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-19T05:00:00.000Z\",\"updated\":\"2018-03-22T07:23:14.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"AB-012-987-1234-01\",\"chain\":{\"id\":\"-6\",\"name\":\"Hyatt Hotels\"},\"brand\":{\"id\":\"2209\",\"name\":\"Hyatt Place\"},\"spoken_languages\":{\"vi\":{\"id\":\"vi\",\"name\":\"Vietnamese\"}},\"multi_unit\":true,\"payment_registration_recommended\":false,\"vacation_rental_details\": {\"registry_number\": \"Property Registration Number 123456\",\"private_host\": \"true\",\"property_manager\": {\"name\": \"Victor\",\"links\": {\"image\": {\"method\": \"GET\",\"href\": \"https://test-image/test/test/836f1097-fbcf-43b5-bc02-c8ff6658cb90.c1.jpg\"}}},\"rental_agreement\": {\"links\": {\"rental_agreement\": {\"method\": \"GET\",\"href\": \"https://test-link.test.amazonaws.com/rentalconditions_property_d65e7eb5-4a7c-4a80-a8a3-171999f9f444.pdf\"}}},\"house_rules\": [\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\": {\"4296\": {\"id\": \"4296\",\"name\": \"Furnished balcony or patio\"},\"2859\": {\"id\": \"2859\",\"name\": \"Private pool\"}},\"vrbo_srp_id\": \"123.1234567.5678910\",\"listing_id\": \"1234567\",\"listing_number\": \"5678910\",\"listing_source\": \"HOMEAWAY_US\",\"listing_unit\": \"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} {\"property_id\":\"67890\",\"name\":\"Test Property Name 2\",\"address\":{\"line_1\":\"123 Main St\",\"line_2\":\"Apt A\",\"city\":\"Springfield\",\"state_province_code\":\"MO\",\"state_province_name\":\"Missouri\",\"postal_code\":\"65804\",\"country_code\":\"US\",\"obfuscation_required\":true,\"localized\":{\"links\":{\"es-ES\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=es-ES&include=address&property_id=67890\"},\"de-DE\":{\"method\":\"GET\",\"href\":\"https://api.ean.com/v3/properties/content?language=de-DE&include=address&property_id=67890\"}}}},\"ratings\":{\"property\":{\"rating\":\"3.5\",\"type\":\"Star\"},\"guest\":{\"count\":7651,\"overall\":\"4.3\",\"cleanliness\":\"4.2\",\"service\":\"1.1\",\"comfort\":\"4.3\",\"condition\":\"1.6\",\"location\":\"4.0\",\"neighborhood\":\"3.4\",\"quality\":\"3.4\",\"value\":\"2.2\",\"amenities\":\"1.4\",\"recommendation_percent\":\"80%\"}},\"location\":{\"coordinates\":{\"latitude\":37.15845,\"longitude\":-93.26838},\"obfuscated_coordinates\":{\"latitude\":28.339303,\"longitude\":-81.47791},\"obfuscation_required\":true},\"phone\":\"1-417-862-0153\",\"fax\":\"1-417-863-7249\",\"category\":{\"id\":\"1\",\"name\":\"Hotel\"},\"rank\":42,\"business_model\":{\"expedia_collect\":true,\"property_collect\":true},\"checkin\":{\"24_hour\":\"24-hour check-in\",\"begin_time\":\"3:00 PM\",\"end_time\":\"11:00 PM\",\"instructions\":\"Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />\",\"special_instructions\":\"There is no front desk at this property. To make arrangements for check-in please contact the property ahead of time using the information on the booking confirmation.\",\"min_age\":18},\"checkout\":{\"time\":\"11:00 AM\"},\"fees\":{\"mandatory\":\"

    You'll be asked to pay the following charges at the hotel:

    • Deposit: USD 50 per day
    • Resort fee: USD 29.12 per accommodation, per night
    The hotel resort fee includes:
    • Fitness center access
    • Internet access
    • Phone calls
    • Additional inclusions

    We have included all charges provided to us by the property. However, charges can vary, for example, based on length of stay or the room you book.

    \",\"optional\":\"Fee for in-room wireless Internet: USD 15 per hour (rates may vary)
  • Airport shuttle fee: USD 350 per vehicle (one way)
  • Rollaway bed fee: USD 175 per night
  • \"},\"policies\":{\"know_before_you_go\":\"Reservations are required for massage services and spa treatments. Reservations can be made by contacting the hotel prior to arrival, using the contact information on the booking confirmation.
  • Children 11 years old and younger stay free when occupying the parent or guardian's room, using existing bedding.
  • Only registered guests are allowed in the guestrooms.
  • Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.
  • \"},\"attributes\":{\"general\":{\"2549\":{\"id\":\"2549\",\"name\":\"No elevators\"},\"3357\":{\"id\":\"3357\",\"name\":\"Caters to adults only\"}},\"pets\":{\"51\":{\"id\":\"51\",\"name\":\"Pets allowed\"},\"2809\":{\"id\":\"2809\",\"name\":\"Dogs only\"},\"3321\":{\"id\":\"3321\",\"name\":\"Pet maximum weight in kg is - 24\",\"value\":24}}},\"amenities\":{\"9\":{\"id\":\"9\",\"name\":\"Fitness facilities\"},\"2820\":{\"id\":\"2820\",\"name\":\"Number of indoor pools - 10\",\"value\":10}},\"images\":[{\"caption\":\"Featured Image\",\"hero_image\":true,\"category\":3,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}}}],\"onsite_payments\":{\"currency\":\"USD\",\"types\":{\"171\":{\"id\":\"171\",\"name\":\"American Express\"}}},\"rooms\":{\"224829\":{\"id\":\"224829\",\"name\":\"Single Room\",\"descriptions\":{\"overview\":\"2 Twin Beds
    269-sq-foot (25-sq-meter) room with mountain views

    Internet - Free WiFi
    Entertainment - Flat-screen TV with cable channels
    Food & Drink - Refrigerator, coffee/tea maker, room service, and free bottled water
    Sleep - Premium bedding
    Bathroom - Private bathroom, shower, bathrobes, and free toiletries
    Practical - Safe and desk; cribs/infant beds available on request
    Comfort - Climate-controlled air conditioning and daily housekeeping
    Non-Smoking
    \"},\"amenities\":{\"130\":{\"id\":\"130\",\"name\":\"Refrigerator\"},\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"}},\"images\":[{\"hero_image\":true,\"category\":21001,\"links\":{\"70px\":{\"method\":\"GET\",\"href\":\"https://i.travelapi.com/hotels/1000000/20000/15300/15237/bef1b976_t.jpg\"}},\"caption\":\"Guestroom\"}],\"bed_groups\":{\"37321\":{\"id\":\"37321\",\"description\":\"1 King Bed\",\"configuration\":[{\"type\":\"KingBed\",\"size\":\"King\",\"quantity\":1}]}},\"area\":{\"square_meters\":17},\"views\":{\"4134\":{\"id\":\"4134\",\"name\":\"City view\"}},\"occupancy\":{\"max_allowed\":{\"total\":3,\"children\":2,\"adults\":3},\"age_categories\":{\"ChildAgeA\":{\"name\":\"ChildAgeA\",\"minimum_age\":3}}}}},\"rates\":{\"333abc\":{\"id\":\"333abc\",\"amenities\":{\"1234\":{\"id\":\"1234\",\"name\":\"Test Amenity - 200\",\"value\":\"200\"},\"2104\":{\"id\":\"2104\",\"name\":\"Full Breakfast\"}},\"special_offer_description\":\"Breakfast for 2 - Rate includes the following:\\r\\n
    • Accommodations as selected
    • \\r\\n
    • Breakfast in hotel restaurant for up to 2 adults and children 12 years old and under registered in the same room
    • \\r\\n
    Must book this rate plan to receive benefits. Details provided at check-in. Taxes and gratuity may not be included. No refunds for any unused portion of offer. Offer subject to availability. Offer is not valid with groups/conventions and may not be combined with other promotional offers. Other restrictions and blackout dates may apply.\\r\\n\"}},\"dates\":{\"added\":\"1998-07-20T05:00:00.000Z\",\"updated\":\"2018-03-22T13:33:17.000Z\"},\"descriptions\":{\"amenities\":\"Don't miss out on the many recreational opportunities, including an outdoor pool, a sauna, and a fitness center. Additional features at this hotel include complimentary wireless Internet access, concierge services, and an arcade/game room.\",\"dining\":\"Grab a bite at one of the hotel's 3 restaurants, or stay in and take advantage of 24-hour room service. Quench your thirst with your favorite drink at a bar/lounge. Buffet breakfasts are available daily for a fee.\",\"renovations\":\"During renovations, the hotel will make every effort to minimize noise and disturbance. The property will be renovating from 08 May 2017 to 18 May 2017 (completion date subject to change). The following areas are affected:
    • Fitness facilities
    \",\"national_ratings\":\"For the benefit of our customers, we have provided a rating based on our rating system.\",\"business_amenities\":\"Featured amenities include complimentary wired Internet access, a 24-hour business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. Free self parking is available onsite.\",\"rooms\":\"Make yourself at home in one of the 334 air-conditioned rooms featuring LCD televisions. Complimentary wired and wireless Internet access keeps you connected, and satellite programming provides entertainment. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and complimentary toiletries. Conveniences include phones, as well as safes and desks.\",\"attractions\":\"Distances are calculated in a straight line from the property's location to the point of interest or attraction, and may not reflect actual travel distance.

    Distances are displayed to the nearest 0.1 mile and kilometer.

    Sogo Department Store - 0.7 km / 0.4 mi
    National Museum of Natural Science - 1.1 km / 0.7 mi
    Shr-Hwa International Tower - 1.4 km / 0.8 mi
    Shinkong Mitsukoshi Department Store - 1.5 km / 0.9 mi
    Taichung Metropolitan Opera House - 1.7 km / 1 mi
    Tiger City Mall - 1.8 km / 1.1 mi
    Maple Garden Park - 1.9 km / 1.2 mi
    National Museum of Fine Arts - 2.1 km / 1.3 mi
    Feng Chia University - 2.4 km / 1.5 mi
    Bao An Temple - 2.5 km / 1.6 mi
    Fengjia Night Market - 2.5 km / 1.6 mi
    Zhonghua Night Market - 2.7 km / 1.7 mi
    Chonglun Park - 2.9 km / 1.8 mi
    Wan He Temple - 2.9 km / 1.8 mi
    Chungyo Department Store - 3.1 km / 1.9 mi

    The nearest airports are:
    Taichung (RMQ) - 12 km / 7.5 mi
    Taipei (TPE-Taoyuan Intl.) - 118.3 km / 73.5 mi
    Taipei (TSA-Songshan) - 135.5 km / 84.2 mi

    \",\"location\":\"This 4-star hotel is within close proximity of Shr-Hwa International Tower and Shinkong Mitsukoshi Department Store. A stay at Tempus Hotel Taichung places you in the heart of Taichung, convenient to Sogo Department Store and National Museum of Natural Science.\",\"headline\":\"Near National Museum of Natural Science\",\"general\":\"General description\"},\"statistics\":{\"52\":{\"id\":\"52\",\"name\":\"Total number of rooms - 820\",\"value\":\"820\"},\"54\":{\"id\":\"54\",\"name\":\"Number of floors - 38\",\"value\":\"38\"}},\"airports\":{\"preferred\":{\"iata_airport_code\":\"SGF\"}},\"themes\":{\"2337\":{\"id\":\"2337\",\"name\":\"Luxury Hotel\"},\"2341\":{\"id\":\"2341\",\"name\":\"Spa Hotel\"}},\"all_inclusive\":{\"all_rate_plans\":true,\"some_rate_plans\":false,\"details\":\"

    This resort is all-inclusive. Onsite food and beverages are included in the room price (some restrictions may apply).

    Activities and facilities/equipment
    Land activities

    • Fitness facilities

    Lessons/classes/games
    • Pilates
    • Yoga

    Entertainment

    • Onsite entertainment and activities
    • Onsite live performances

    \"},\"tax_id\":\"CD-012-987-1234-02\",\"chain\":{\"id\":\"-5\",\"name\":\"Hilton Worldwide\"},\"brand\":{\"id\":\"358\",\"name\":\"Hampton Inn\"},\"spoken_languages\":{\"en\":{\"id\":\"en\",\"name\":\"English\"}},\"multi_unit\":true,\"payment_registration_recommended\":true,\"vacation_rental_details\":{\"registry_number\":\"Property Registration Number 123456\",\"private_host\":\"true\",\"property_manager\":{\"name\":\"John Smith\",\"links\":{\"image\":{\"method\":\"GET\",\"href\":\"https://example.com/profile.jpg\"}}},\"rental_agreement\":{\"links\":{\"rental_agreement\":{\"method\":\"GET\",\"href\":\"https:/example.com/rentalconditions.pdf\"}}},\"house_rules\":[\"Children welcome\",\"No pets\",\"No smoking\",\"No parties or events\"],\"amenities\":{\"2859\":{\"id\":\"2859\",\"name\":\"Private pool\"},\"4296\":{\"id\":\"4296\",\"name\":\"Furnished balcony or patio\"}},\"vrbo_srp_id\":\"123.1234567.5678910\",\"listing_id\":\"1234567\",\"listing_number\":\"5678910\",\"listing_source\":\"HOMEAWAY_US\",\"listing_unit\":\"/units/0000/32d82dfa-1a48-45d6-9132-49fdbf1bfc60\"},\"supply_source\":\"vrbo\"} ``` * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. (optional) @@ -1836,6 +1932,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Property Guest Reviews + * Note: Property Guest Reviews are only available if your account is configured for access and all launch requirements have been followed. Please find the launch requirements here [https://support.expediapartnersolutions.com/hc/en-us/articles/360008646799](https://support.expediapartnersolutions.com/hc/en-us/articles/360008646799) and contact your Account Manager for more details. The response is an individual Guest Reviews object containing multiple guest reviews for the requested active property. To ensure you always show the latest guest reviews, this call should be made whenever a customer looks at the details for a specific property. + * @param operation [GetPropertyGuestReviewsOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type GuestReviews + */ fun execute(operation: GetPropertyGuestReviewsOperation): Response { return execute< Nothing, @@ -1933,6 +2036,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Region + * Returns the geographic definition and property mappings for the requested Region ID. The response is a single JSON formatted region object. + * @param operation [GetRegionOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Region + */ fun execute(operation: GetRegionOperation): Response { return execute< Nothing, @@ -2042,6 +2152,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Regions + * Returns the geographic definition and property mappings of regions matching the specified parameters.

    To request all regions in the world, omit the `ancestor` query parameter. To request all regions in a specific continent, country or other level, specify the ID of that region as the `ancestor`. Refer to the list of [top level regions](https://developers.expediagroup.com/docs/rapid/lodging/geography/geography-reference-lists).

    The response is a paginated list of regions. See the `Link` header in the 200 response section. + * @param operation [GetRegionsOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: GetRegionsOperation): Response> { return execute< Nothing, @@ -2093,12 +2210,6 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat return execute(operation) } - @JvmOverloads - fun getPaginator(operation: GetRegionsOperation): ResponsePaginator> { - val response = execute(operation) - return ResponsePaginator(this, response, emptyList()) { it.body>() } - } - /** * Regions * Returns the geographic definition and property mappings of regions matching the specified parameters.

    To request all regions in the world, omit the `ancestor` query parameter. To request all regions in a specific continent, country or other level, specify the ID of that region as the `ancestor`. Refer to the list of [top level regions](https://developers.expediagroup.com/docs/rapid/lodging/geography/geography-reference-lists).

    The response is a paginated list of regions. See the `Link` header in the 200 response section. @@ -2226,6 +2337,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } @JvmOverloads + fun getPaginator(operation: GetRegionsOperation): ResponsePaginator> { + val response = execute(operation) + return ResponsePaginator(this, response, emptyList()) { it.body>() } + } + + @JvmOverloads + @Deprecated("Use getPaginator method instead", ReplaceWith("getPaginator(operation: GetRegionsOperation)")) fun getRegionsPaginator( include: kotlin.collections.List, language: kotlin.String, @@ -2265,6 +2383,7 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } @JvmOverloads + @Deprecated("Use getPaginator method instead", ReplaceWith("getPaginator(operation: GetRegionsOperation)")) fun getRegionsPaginatorWithResponse( include: kotlin.collections.List, language: kotlin.String, @@ -2303,6 +2422,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat return ResponsePaginator(this, response, emptyList()) { it.body>() } } + /** + * Search for and retrieve Bookings with Affiliate Reference Id + * This can be called directly without a token when an affiliate reference id is provided. It returns details about bookings associated with an affiliate reference id, along with cancel links to cancel the bookings. Note: Newly created itineraries may sometimes have a small delay between the time of creation and the time that the itinerary can be retrieved. If you receive no results while trying to search for an itinerary that was successfully created, or if you receive a response with two fields, namely, `itinerary_id` and `creation_date_time`, then please wait a few minutes before trying to search for the itinerary again. + * @param operation [GetReservationOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: GetReservationOperation): Response> { return execute< Nothing, @@ -2394,6 +2520,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Retrieve Booking + * This API call returns itinerary details and links to resume or cancel the booking. There are two methods to retrieve a booking: * Using the link included in the original Book response, example: https://api.ean.com/v3/itineraries/8955599932111?token=QldfCGlcUA4GXVlSAQ4W * Using the email of the booking. If the email contains special characters, they must be encoded to successfully retrieve the booking. Example: https://api.ean.com/v3/itineraries/8955599932111?email=customer@email.com Note: Newly created itineraries may sometimes have a small delay between the time of creation and the time that the itinerary can be retrieved. If you receive an error when trying to retrieve an itinerary that was successfully created, or if you receive a response with two fields, namely, `itinerary_id` and `creation_date_time`, then please wait a few minutes before trying to retrieve the itinerary again. + * @param operation [GetReservationByItineraryIdOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Itinerary + */ fun execute(operation: GetReservationByItineraryIdOperation): Response { return execute< Nothing, @@ -2491,6 +2624,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Properties within Polygon + * Returns the properties within an custom polygon that represents a multi-city area or smaller. The coordinates of the polygon should be in [GeoJSON format](https://tools.ietf.org/html/rfc7946) and the polygon must conform to the following restrictions: * Polygon size - diagonal distance of the polygon must be less than 500km * Polygon type - only single polygons are supported * Number of coordinates - must be <= 2000 + * @param operation [PostGeographyOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type kotlin.collections.Map + */ fun execute(operation: PostGeographyOperation): Response> { return execute< PropertiesGeoJsonRequest, @@ -2594,6 +2734,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Create Booking + * This link will be available in the Price Check response or in the register payments response when Two-Factor Authentication is used. It returns an itinerary id and links to retrieve reservation details, cancel a held booking, resume a held booking or complete payment session. Please note that depending on the state of the booking, the response will contain only the applicable link(s). + * @param operation [PostItineraryOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type ItineraryCreation + */ fun execute(operation: PostItineraryOperation): Response { return execute< CreateItineraryRequest, @@ -2679,6 +2826,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Register Payments + * This link only applies to transactions where EPS takes the customer's payment information. This includes both Expedia Collect and Property Collect transactions.
    This link will be available in the Price Check response if payment registration is required. It returns a payment session ID and a link to create a booking. This will be the first step in the booking flow only if you've opted into Two-Factor Authentication to comply with the September 2019 EU Regulations for PSD2. Learn more with our [PSD2 Overview](https://developers.expediagroup.com/docs/rapid/lodging/booking/psd2-regulation) + * @param operation [PostPaymentSessionsOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type PaymentSessions + */ fun execute(operation: PostPaymentSessionsOperation): Response { return execute< PaymentSessionsRequest, @@ -2764,6 +2918,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Price-Check + * Confirms the price returned by the Property Availability response. Use this API to verify a previously-selected rate is still valid before booking. If the price is matched, the response returns a link to request a booking. If the price has changed, the response returns new price details and a booking link for the new price. If the rate is no longer available, the response will return a new Property Availability request link to search again for different rates. In the event of a price change, go back to Property Availability and book the property at the new price or return to additional rates for the property. + * @param operation [PriceCheckOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type RoomPriceCheck + */ fun execute(operation: PriceCheckOperation): Response { return execute< Nothing, @@ -2861,6 +3022,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Complete Payment Session + * This link only applies to transactions where EPS takes the customer's payment information. This includes both Expedia Collect and Property Collect transactions.
    This link will be available in the booking response only if you've opted into Two-Factor Authentication to comply with the September 2019 EU Regulations for PSD2. It should be called after Two-Factor Authentication has been completed by the customer in order to finalize the payment and complete the booking or hold attempt. Learn more with our [PSD2 Overview](https://developers.expediagroup.com/docs/rapid/lodging/booking/psd2-regulation) + * @param operation [PutCompletePaymentSessionOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type CompletePaymentSession + */ fun execute(operation: PutCompletePaymentSessionOperation): Response { return execute< Nothing, @@ -2946,6 +3114,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Resume Booking + * This link will be available in the booking response after creating a held booking. + * @param operation [PutResumeBookingOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Nothing + */ fun execute(operation: PutResumeBookingOperation): Response { return execute< Nothing, @@ -3031,6 +3206,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Request Test Notification + * This request triggers a test notification according to the specified event_type. All event types supported by the Notifications API are available to test. + * @param operation [RequestTestNotificationOperation] + * @throws ExpediaGroupApiErrorException + * @return a [Response] object with a body of type Nothing + */ fun execute(operation: RequestTestNotificationOperation): Response { return execute< TestNotificationRequest, @@ -3116,6 +3298,13 @@ class RapidClient private constructor(clientConfiguration: RapidClientConfigurat } } + /** + * Request Undelivered Notifications + * Use this API to fetch undelivered notifications. Up to 25 notifications are returned with each call. Each undelivered notification will be returned only once. + * @param operation [RequestUndeliveredNotificationsOperation] + + * @return a [Response] object with a body of type kotlin.collections.List + */ fun execute(operation: RequestUndeliveredNotificationsOperation): Response> { return execute< Nothing, diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperation.kt index f17df220d1..4ecfd5c65e 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Operation import com.expediagroup.sdk.rapid.models.ChangeRoomDetailsRequest +/** + * Change details of a room. + * @property requestBody [ChangeRoomDetailsRequest] + * @property params [ChangeRoomDetailsOperationParams] + + */ class ChangeRoomDetailsOperation( requestBody: ChangeRoomDetailsRequest?, params: ChangeRoomDetailsOperationParams diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperationParams.kt index 0c8fc77b9f..3f2b21f6f6 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/ChangeRoomDetailsOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property roomId Room ID of a property.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property changeRoomDetailsRequest The request body is required, but only the fields that are being changed need to be passed in. Fields that are not being changed should not be included in the request body. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The change call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `unknown_internal_error` + */ data class ChangeRoomDetailsOperationParams( val itineraryId: kotlin.String, val roomId: kotlin.String, @@ -39,16 +48,34 @@ data class ChangeRoomDetailsOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param roomId Room ID of a property.
    + */ fun roomId(roomId: kotlin.String) = apply { this.roomId = roomId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The change call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `unknown_internal_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): ChangeRoomDetailsOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperation.kt index f93b8b2f60..763e880671 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Operation import com.expediagroup.sdk.rapid.models.CommitChangeRoomRequestBody +/** + * Commit a change of itinerary that may require additional payment or refund. + * @property requestBody [CommitChangeRoomRequestBody] + * @property params [CommitChangeOperationParams] + + */ class CommitChangeOperation( requestBody: CommitChangeRoomRequestBody?, params: CommitChangeOperationParams diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperationParams.kt index b0983d1e78..5a02cc8165 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/CommitChangeOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration. Send IPV4 addresses only.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property roomId Room ID of a property.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The change call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `unknown_internal_error` + * @property commitChangeRoomRequestBody The request body is required if additional payment is necessary. The body can optionally contain the `change_reference_id`. + */ data class CommitChangeOperationParams( val itineraryId: kotlin.String, val roomId: kotlin.String, @@ -39,16 +48,34 @@ data class CommitChangeOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param roomId Room ID of a property.
    + */ fun roomId(roomId: kotlin.String) = apply { this.roomId = roomId } + /** + * @param customerIp IP address of the customer, as captured by your integration. Send IPV4 addresses only.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The change call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `unknown_internal_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): CommitChangeOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperation.kt index 8d91c0bd85..1ddc064843 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Cancel Held Booking + * @property params [DeleteHeldBookingOperationParams] + + */ class DeleteHeldBookingOperation( params: DeleteHeldBookingOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperationParams.kt index 2374dccafb..2ba5ced0b6 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteHeldBookingOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The cancel call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test held booking. * `service_unavailable` * `internal_server_error` * `post_stay_cancel` + */ data class DeleteHeldBookingOperationParams( val itineraryId: kotlin.String, val customerIp: kotlin.String, @@ -37,14 +44,29 @@ data class DeleteHeldBookingOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The cancel call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test held booking. * `service_unavailable` * `internal_server_error` * `post_stay_cancel` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): DeleteHeldBookingOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperation.kt index 621aa1aad3..af4a50d894 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Cancel a room. + * @property params [DeleteRoomOperationParams] + + */ class DeleteRoomOperation( params: DeleteRoomOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperationParams.kt index 0311d2ec37..6462ba5084 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/DeleteRoomOperationParams.kt @@ -18,6 +18,14 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property roomId Room ID of a property.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The cancel call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `unknown_internal_error` * `post_stay_cancel` + */ data class DeleteRoomOperationParams( val itineraryId: kotlin.String, val roomId: kotlin.String, @@ -39,16 +47,34 @@ data class DeleteRoomOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param roomId Room ID of a property.
    + */ fun roomId(roomId: kotlin.String) = apply { this.roomId = roomId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The cancel call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `unknown_internal_error` * `post_stay_cancel` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): DeleteRoomOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperation.kt index 9cf5a8d3dc..e7bae924b6 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Get additional property room rates and availability + * @property params [GetAdditionalAvailabilityOperationParams] + + */ class GetAdditionalAvailabilityOperation( params: GetAdditionalAvailabilityOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperationParams.kt index 3c8b310157..45db6a8823 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAdditionalAvailabilityOperationParams.kt @@ -18,6 +18,22 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property propertyId Expedia Property ID.
    + * @property token A hashed collection of query parameters. Used to maintain state across calls. This token is provided as part of the `additional_rates` link from the shop response, or the `shop` link on a `sold_out` price check response. It is also provided from the `shop_for_change` link on an itinerary retrieve. + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test Shop calls have a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `unknown_internal_error` * `no_availability` * `forbidden` + * @property checkin Check-in date, in ISO 8601 format (YYYY-MM-DD). This can be up to 365 days in the future. Some partner configurations may extend this up to 500 days.
    Note: Only needed for hard change if desired check-in date is different than original booking. If specified must also specify `checkout`. + * @property checkout Check-out date, in ISO 8601 format (YYYY-MM-DD). Total length of stay cannot exceed 28 nights or 365 nights depending on Vacation Rental configurations.
    Note: Only needed for hard change if desired check-out date is different than original booking. If specified must also specify `checkin`.
    + * @property exclusion Single exclusion type. Send multiple instances of this parameter to request multiple exclusions.
    Note: Optional parameter for use with hard change requests.
    * `refundable_damage_deposit` - Excludes rates with refundable damage deposits from the response. + * @property filter Single filter type. Send multiple instances of this parameter to request multiple filters.
    Note: Optional parameter for use with hard change requests.
    This parameter cannot be set to `property_collect` if the existing booking is `expedia_collect` and vice versa.
    * `refundable` - Filters results to only show fully refundable rates. * `expedia_collect` - Filters results to only show rates where payment is collected by Expedia at the time of booking. These properties can be eligible for payments via Expedia Affiliate Collect(EAC). * `property_collect` - Filters results to only show rates where payment is collected by the property after booking. This can include rates that require a deposit by the property, dependent upon the deposit policies. * `loyalty` - Filters results to only show rates that are eligible for loyalty points. + * @property include Modify the response by including types of responses that are not provided by default.
    * `sale_scenario.mobile_promotion` - Enable the `mobile_promotion` flag under the `sale_scenario` section of the response. + * @property occupancy Defines the requested occupancy for a single room. Each room must have at least 1 adult occupant.
    Format: `numberOfAdults[-firstChildAge[,nextChildAge]]`
    To request multiple rooms (of the same type), include one instance of occupancy for each room requested. Up to 8 rooms may be requested or booked at once.
    Note: Only needed for hard change if desired occupancy is different than original booking.
    Examples: * 2 adults, one 9-year-old and one 4-year-old would be represented by `occupancy=2-9,4`.
    * A multi-room request to lodge an additional 2 adults would be represented by `occupancy=2-9,4&occupancy=2` + * @property rateOption Request specific rate options for each property. Send multiple instances of this parameter to request multiple rate options. Note: Optional parameter for use with hard change requests.
    Accepted values:
    * `member` - Return member rates for each property. This feature must be enabled and requires a user to be logged in to request these rates. * `net_rates` - Return net rates for each property. This feature must be enabled to request these rates. * `cross_sell` - Identify if the traffic is coming from a cross sell booking. Where the traveler has booked another service (flight, car, activities...) before hotel. + * @property salesChannel Provide the sales channel if you wish to override the sales_channel provided in the previous call. EPS dynamically provides the best content for optimal conversion on each sales channel.
    Note: Must specify this value for hard change requests.
    * `website` - Standard website accessed from the customer's computer * `agent_tool` - Your own agent tool used by your call center or retail store agent * `mobile_app` - An application installed on a phone or tablet device * `mobile_web` - A web browser application on a phone or tablet device * `meta` - Rates will be passed to and displayed on a 3rd party comparison website * `cache` - Rates will be used to populate a local cache + * @property currency Determines the returned currency type throughout the response
    Note: This parameter is only valid for hard change requests and is ignored in all other cases + */ data class GetAdditionalAvailabilityOperationParams( val propertyId: kotlin.String, val customerIp: kotlin.String? = null, @@ -55,32 +71,74 @@ data class GetAdditionalAvailabilityOperationParams( private var salesChannel: kotlin.String? = null, private var currency: kotlin.String? = null ) { + /** + * @param propertyId Expedia Property ID.
    + */ fun propertyId(propertyId: kotlin.String) = apply { this.propertyId = propertyId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test Shop calls have a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `unknown_internal_error` * `no_availability` * `forbidden` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token A hashed collection of query parameters. Used to maintain state across calls. This token is provided as part of the `additional_rates` link from the shop response, or the `shop` link on a `sold_out` price check response. It is also provided from the `shop_for_change` link on an itinerary retrieve. + */ fun token(token: kotlin.String) = apply { this.token = token } + /** + * @param checkin Check-in date, in ISO 8601 format (YYYY-MM-DD). This can be up to 365 days in the future. Some partner configurations may extend this up to 500 days.
    Note: Only needed for hard change if desired check-in date is different than original booking. If specified must also specify `checkout`. + */ fun checkin(checkin: kotlin.String) = apply { this.checkin = checkin } + /** + * @param checkout Check-out date, in ISO 8601 format (YYYY-MM-DD). Total length of stay cannot exceed 28 nights or 365 nights depending on Vacation Rental configurations.
    Note: Only needed for hard change if desired check-out date is different than original booking. If specified must also specify `checkin`.
    + */ fun checkout(checkout: kotlin.String) = apply { this.checkout = checkout } + /** + * @param exclusion Single exclusion type. Send multiple instances of this parameter to request multiple exclusions.
    Note: Optional parameter for use with hard change requests.
    * `refundable_damage_deposit` - Excludes rates with refundable damage deposits from the response. + */ fun exclusion(exclusion: kotlin.collections.List) = apply { this.exclusion = exclusion } + /** + * @param filter Single filter type. Send multiple instances of this parameter to request multiple filters.
    Note: Optional parameter for use with hard change requests.
    This parameter cannot be set to `property_collect` if the existing booking is `expedia_collect` and vice versa.
    * `refundable` - Filters results to only show fully refundable rates. * `expedia_collect` - Filters results to only show rates where payment is collected by Expedia at the time of booking. These properties can be eligible for payments via Expedia Affiliate Collect(EAC). * `property_collect` - Filters results to only show rates where payment is collected by the property after booking. This can include rates that require a deposit by the property, dependent upon the deposit policies. * `loyalty` - Filters results to only show rates that are eligible for loyalty points. + */ fun filter(filter: kotlin.collections.List) = apply { this.filter = filter } + /** + * @param include Modify the response by including types of responses that are not provided by default.
    * `sale_scenario.mobile_promotion` - Enable the `mobile_promotion` flag under the `sale_scenario` section of the response. + */ fun include(include: kotlin.collections.List) = apply { this.include = include } + /** + * @param occupancy Defines the requested occupancy for a single room. Each room must have at least 1 adult occupant.
    Format: `numberOfAdults[-firstChildAge[,nextChildAge]]`
    To request multiple rooms (of the same type), include one instance of occupancy for each room requested. Up to 8 rooms may be requested or booked at once.
    Note: Only needed for hard change if desired occupancy is different than original booking.
    Examples: * 2 adults, one 9-year-old and one 4-year-old would be represented by `occupancy=2-9,4`.
    * A multi-room request to lodge an additional 2 adults would be represented by `occupancy=2-9,4&occupancy=2` + */ fun occupancy(occupancy: kotlin.collections.List) = apply { this.occupancy = occupancy } + /** + * @param rateOption Request specific rate options for each property. Send multiple instances of this parameter to request multiple rate options. Note: Optional parameter for use with hard change requests.
    Accepted values:
    * `member` - Return member rates for each property. This feature must be enabled and requires a user to be logged in to request these rates. * `net_rates` - Return net rates for each property. This feature must be enabled to request these rates. * `cross_sell` - Identify if the traffic is coming from a cross sell booking. Where the traveler has booked another service (flight, car, activities...) before hotel. + */ fun rateOption(rateOption: kotlin.collections.List) = apply { this.rateOption = rateOption } + /** + * @param salesChannel Provide the sales channel if you wish to override the sales_channel provided in the previous call. EPS dynamically provides the best content for optimal conversion on each sales channel.
    Note: Must specify this value for hard change requests.
    * `website` - Standard website accessed from the customer's computer * `agent_tool` - Your own agent tool used by your call center or retail store agent * `mobile_app` - An application installed on a phone or tablet device * `mobile_web` - A web browser application on a phone or tablet device * `meta` - Rates will be passed to and displayed on a 3rd party comparison website * `cache` - Rates will be used to populate a local cache + */ fun salesChannel(salesChannel: kotlin.String) = apply { this.salesChannel = salesChannel } + /** + * @param currency Determines the returned currency type throughout the response
    Note: This parameter is only valid for hard change requests and is ignored in all other cases + */ fun currency(currency: kotlin.String) = apply { this.currency = currency } fun build(): GetAdditionalAvailabilityOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperation.kt index 7f345a48a3..b5ea62a805 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Get property room rates and availability + + * @property params [GetAvailabilityOperationParams] + + */ class GetAvailabilityOperation( params: GetAvailabilityOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperationParams.kt index c7465dc4a2..c303d321eb 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetAvailabilityOperationParams.kt @@ -18,6 +18,31 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property checkin Check-in date, in ISO 8601 format (YYYY-MM-DD). This can be up to 365 days in the future. Some partner configurations may extend this up to 500 days. + * @property checkout Check-out date, in ISO 8601 format (YYYY-MM-DD). Total length of stay cannot exceed 28 nights or 365 nights depending on Vacation Rental configurations. + * @property currency Requested currency for the rates, in ISO 4217 format

    Currency Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/currency-options](https://developers.expediagroup.com/docs/rapid/resources/reference/currency-options) + * @property countryCode The country code of the traveler's point of sale, in ISO 3166-1 alpha-2 format. This should represent the country where the shopping transaction is taking place.
    For more information see: [https://www.iso.org/obp/ui/#search/code/](https://www.iso.org/obp/ui/#search/code/) + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/)
    Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property occupancy Defines the requested occupancy for a single room. Each room must have at least 1 adult occupant.
    Format: `numberOfAdults[-firstChildAge[,nextChildAge]]`
    To request multiple rooms (of the same type), include one instance of occupancy for each room requested. Up to 8 rooms may be requested or booked at once.
    Examples: * 2 adults, one 9-year-old and one 4-year-old would be represented by `occupancy=2-9,4`.
    * A multi-room request to lodge an additional 2 adults would be represented by `occupancy=2-9,4&occupancy=2` + * @property propertyId The ID of the property you want to search for. You can provide 1 to 250 property_id parameters. + * @property ratePlanCount The number of rates to return per property. The rates with the best value will be returned, e.g. a rate_plan_count=4 will return the best 4 rates, but the rates are not ordered from lowest to highest or vice versa in the response. Generally lowest rates will be prioritized.

    The value must be between 1 and 250. + * @property salesChannel You must provide the sales channel for the display of rates. EPS dynamically provides the best content for optimal conversion on each sales channel. If you have a sales channel that is not currently supported in this list, please contact our support team.
    * `website` - Standard website accessed from the customer's computer * `agent_tool` - Your own agent tool used by your call center or retail store agent * `mobile_app` - An application installed on a phone or tablet device * `mobile_web` - A web browser application on a phone or tablet device * `meta` - Rates will be passed to and displayed on a 3rd party comparison website * `cache` - Rates will be used to populate a local cache + * @property salesEnvironment You must provide the sales environment in which rates will be sold. EPS dynamically provides the best content for optimal conversion. If you have a sales environment that is not currently supported in this list, please contact our support team.
    * `hotel_package` - Use when selling the hotel with a transport product, e.g. flight & hotel. * `hotel_only` - Use when selling the hotel as an individual product. * `loyalty` - Use when you are selling the hotel as part of a loyalty program and the price is converted to points. + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test Shop calls have a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `unknown_internal_error` + * @property amenityCategory Single amenity category. Send multiple instances of this parameter to request rates that match multiple amenity categories.
    See the Amenity Categories section of the [Content Reference Lists](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists) for a list of values. + * @property exclusion Single exclusion type. Send multiple instances of this parameter to request multiple exclusions.
    * `refundable_damage_deposit` - Excludes rates with refundable damage deposits from the response. + * @property filter Single filter type. Send multiple instances of this parameter to request multiple filters.
    * `refundable` - Filters results to only show fully refundable rates. * `expedia_collect` - Filters results to only show rates where payment is collected by Expedia at the time of booking. These properties can be eligible for payments via Expedia Affiliate Collect(EAC). * `property_collect` - Filters results to only show rates where payment is collected by the property after booking. This can include rates that require a deposit by the property, dependent upon the deposit policies. * `loyalty` - Filters results to only show rates that are eligible for loyalty points. + * @property include Modify the response by including types of responses that are not provided by default.
    * `unavailable_reason` - When a property is unavailable for an actionable reason, return a response with that reason - See [Unavailable Reason Codes](https://developers.expediagroup.com/docs/rapid/resources/reference/unavailable-reason-codes) for possible values. * `sale_scenario.mobile_promotion` - Enable the `mobile_promotion` flag under the `room.rate.sale_scenario` section of the response. * `rooms.rates.marketing_fee_incentives` - When a rate has a marketing fee incentive applied, the response will include the `marketing_fee_incentives` array if this flag is provided in the request. + * @property rateOption Request specific rate options for each property. Send multiple instances of this parameter to request multiple rate options. Accepted values:
    * `member` - Return member rates for each property. This feature must be enabled and requires a user to be logged in to request these rates. * `net_rates` - Return net rates for each property. This feature must be enabled to request these rates. * `cross_sell` - Identify if the traffic is coming from a cross sell booking. Where the traveler has booked another service (flight, car, activities...) before hotel. + * @property travelPurpose This parameter is to specify the travel purpose of the booking. This may impact available rate plans, pricing, or tax calculations. * `leisure` * `business` + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetAvailabilityOperationParams( val customerIp: kotlin.String? = null, val customerSessionId: kotlin.String? = null, @@ -73,50 +98,119 @@ data class GetAvailabilityOperationParams( private var partnerPointOfSale: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test Shop calls have a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `unknown_internal_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param checkin Check-in date, in ISO 8601 format (YYYY-MM-DD). This can be up to 365 days in the future. Some partner configurations may extend this up to 500 days. + */ fun checkin(checkin: kotlin.String) = apply { this.checkin = checkin } + /** + * @param checkout Check-out date, in ISO 8601 format (YYYY-MM-DD). Total length of stay cannot exceed 28 nights or 365 nights depending on Vacation Rental configurations. + */ fun checkout(checkout: kotlin.String) = apply { this.checkout = checkout } + /** + * @param currency Requested currency for the rates, in ISO 4217 format

    Currency Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/currency-options](https://developers.expediagroup.com/docs/rapid/resources/reference/currency-options) + */ fun currency(currency: kotlin.String) = apply { this.currency = currency } + /** + * @param countryCode The country code of the traveler's point of sale, in ISO 3166-1 alpha-2 format. This should represent the country where the shopping transaction is taking place.
    For more information see: [https://www.iso.org/obp/ui/#search/code/](https://www.iso.org/obp/ui/#search/code/) + */ fun countryCode(countryCode: kotlin.String) = apply { this.countryCode = countryCode } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/)
    Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param occupancy Defines the requested occupancy for a single room. Each room must have at least 1 adult occupant.
    Format: `numberOfAdults[-firstChildAge[,nextChildAge]]`
    To request multiple rooms (of the same type), include one instance of occupancy for each room requested. Up to 8 rooms may be requested or booked at once.
    Examples: * 2 adults, one 9-year-old and one 4-year-old would be represented by `occupancy=2-9,4`.
    * A multi-room request to lodge an additional 2 adults would be represented by `occupancy=2-9,4&occupancy=2` + */ fun occupancy(occupancy: kotlin.collections.List) = apply { this.occupancy = occupancy } + /** + * @param propertyId The ID of the property you want to search for. You can provide 1 to 250 property_id parameters. + */ fun propertyId(propertyId: kotlin.collections.List) = apply { this.propertyId = propertyId } + /** + * @param ratePlanCount The number of rates to return per property. The rates with the best value will be returned, e.g. a rate_plan_count=4 will return the best 4 rates, but the rates are not ordered from lowest to highest or vice versa in the response. Generally lowest rates will be prioritized.

    The value must be between 1 and 250. + */ fun ratePlanCount(ratePlanCount: java.math.BigDecimal) = apply { this.ratePlanCount = ratePlanCount } + /** + * @param salesChannel You must provide the sales channel for the display of rates. EPS dynamically provides the best content for optimal conversion on each sales channel. If you have a sales channel that is not currently supported in this list, please contact our support team.
    * `website` - Standard website accessed from the customer's computer * `agent_tool` - Your own agent tool used by your call center or retail store agent * `mobile_app` - An application installed on a phone or tablet device * `mobile_web` - A web browser application on a phone or tablet device * `meta` - Rates will be passed to and displayed on a 3rd party comparison website * `cache` - Rates will be used to populate a local cache + */ fun salesChannel(salesChannel: kotlin.String) = apply { this.salesChannel = salesChannel } + /** + * @param salesEnvironment You must provide the sales environment in which rates will be sold. EPS dynamically provides the best content for optimal conversion. If you have a sales environment that is not currently supported in this list, please contact our support team.
    * `hotel_package` - Use when selling the hotel with a transport product, e.g. flight & hotel. * `hotel_only` - Use when selling the hotel as an individual product. * `loyalty` - Use when you are selling the hotel as part of a loyalty program and the price is converted to points. + */ fun salesEnvironment(salesEnvironment: kotlin.String) = apply { this.salesEnvironment = salesEnvironment } + /** + * @param amenityCategory Single amenity category. Send multiple instances of this parameter to request rates that match multiple amenity categories.
    See the Amenity Categories section of the [Content Reference Lists](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists) for a list of values. + */ fun amenityCategory(amenityCategory: kotlin.collections.List) = apply { this.amenityCategory = amenityCategory } + /** + * @param exclusion Single exclusion type. Send multiple instances of this parameter to request multiple exclusions.
    * `refundable_damage_deposit` - Excludes rates with refundable damage deposits from the response. + */ fun exclusion(exclusion: kotlin.collections.List) = apply { this.exclusion = exclusion } + /** + * @param filter Single filter type. Send multiple instances of this parameter to request multiple filters.
    * `refundable` - Filters results to only show fully refundable rates. * `expedia_collect` - Filters results to only show rates where payment is collected by Expedia at the time of booking. These properties can be eligible for payments via Expedia Affiliate Collect(EAC). * `property_collect` - Filters results to only show rates where payment is collected by the property after booking. This can include rates that require a deposit by the property, dependent upon the deposit policies. * `loyalty` - Filters results to only show rates that are eligible for loyalty points. + */ fun filter(filter: kotlin.collections.List) = apply { this.filter = filter } + /** + * @param include Modify the response by including types of responses that are not provided by default.
    * `unavailable_reason` - When a property is unavailable for an actionable reason, return a response with that reason - See [Unavailable Reason Codes](https://developers.expediagroup.com/docs/rapid/resources/reference/unavailable-reason-codes) for possible values. * `sale_scenario.mobile_promotion` - Enable the `mobile_promotion` flag under the `room.rate.sale_scenario` section of the response. * `rooms.rates.marketing_fee_incentives` - When a rate has a marketing fee incentive applied, the response will include the `marketing_fee_incentives` array if this flag is provided in the request. + */ fun include(include: kotlin.collections.List) = apply { this.include = include } + /** + * @param rateOption Request specific rate options for each property. Send multiple instances of this parameter to request multiple rate options. Accepted values:
    * `member` - Return member rates for each property. This feature must be enabled and requires a user to be logged in to request these rates. * `net_rates` - Return net rates for each property. This feature must be enabled to request these rates. * `cross_sell` - Identify if the traffic is coming from a cross sell booking. Where the traveler has booked another service (flight, car, activities...) before hotel. + */ fun rateOption(rateOption: kotlin.collections.List) = apply { this.rateOption = rateOption } + /** + * @param travelPurpose This parameter is to specify the travel purpose of the booking. This may impact available rate plans, pricing, or tax calculations. * `leisure` * `business` + */ fun travelPurpose(travelPurpose: kotlin.String) = apply { this.travelPurpose = travelPurpose } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetAvailabilityOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperation.kt index 17a16b8962..483318f6e3 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Get a calendar of availability dates for properties. This is currently a Vrbo property only feature. + + * @property params [GetCalendarAvailabilityOperationParams] + + */ class GetCalendarAvailabilityOperation( params: GetCalendarAvailabilityOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperationParams.kt index 487dcdfba2..3c72228ff3 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetCalendarAvailabilityOperationParams.kt @@ -18,6 +18,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property propertyId The ID of the property you want to search for. You can provide 1 to 250 property_id parameters. + * @property startDate The first day of availability information to be returned, in ISO 8601 format (YYYY-MM-DD), up to 500 days in the future from the current date. + * @property endDate The last day of availability information to be returned, in ISO 8601 format (YYYY-MM-DD). This must be 365 days or less from the start_date. + * @property test Shop calls have a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `unknown_internal_error` + */ data class GetCalendarAvailabilityOperationParams( val test: kotlin.String? = null, val propertyId: kotlin.collections.List, @@ -35,12 +41,24 @@ data class GetCalendarAvailabilityOperationParams( private var startDate: java.time.LocalDate? = null, private var endDate: java.time.LocalDate? = null ) { + /** + * @param test Shop calls have a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `unknown_internal_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param propertyId The ID of the property you want to search for. You can provide 1 to 250 property_id parameters. + */ fun propertyId(propertyId: kotlin.collections.List) = apply { this.propertyId = propertyId } + /** + * @param startDate The first day of availability information to be returned, in ISO 8601 format (YYYY-MM-DD), up to 500 days in the future from the current date. + */ fun startDate(startDate: java.time.LocalDate) = apply { this.startDate = startDate } + /** + * @param endDate The last day of availability information to be returned, in ISO 8601 format (YYYY-MM-DD). This must be 365 days or less from the start_date. + */ fun endDate(endDate: java.time.LocalDate) = apply { this.endDate = endDate } fun build(): GetCalendarAvailabilityOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperation.kt index 914d344027..fe19efca1f 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Chain Reference + + * @property params [GetChainReferenceOperationParams] + + */ class GetChainReferenceOperation( params: GetChainReferenceOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperationParams.kt index a717722727..a415b90d98 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetChainReferenceOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetChainReferenceOperationParams( val customerSessionId: kotlin.String? = null, val billingTerms: kotlin.String? = null, @@ -37,14 +44,29 @@ data class GetChainReferenceOperationParams( private var paymentTerms: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetChainReferenceOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperation.kt index 89a480c480..c9b4842fb9 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Inactive Properties + + * @property params [GetInactivePropertiesOperationParams] + + */ class GetInactivePropertiesOperation( params: GetInactivePropertiesOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperationParams.kt index 8f181268b6..e81bc6d0ab 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetInactivePropertiesOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property since Required on initial call, not accepted on subsequent paging links provided in response header.
    The earliest date that a property became inactive to include in the results. ISO 8601 format (YYYY-MM-DD) + * @property token Only used for requesting additional pages of data. Provided by the `next` URL in the `Link` response header. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetInactivePropertiesOperationParams( val customerSessionId: kotlin.String? = null, val since: kotlin.String? = null, @@ -41,18 +50,39 @@ data class GetInactivePropertiesOperationParams( private var partnerPointOfSale: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param since Required on initial call, not accepted on subsequent paging links provided in response header.
    The earliest date that a property became inactive to include in the results. ISO 8601 format (YYYY-MM-DD) + */ fun since(since: kotlin.String) = apply { this.since = since } + /** + * @param token Only used for requesting additional pages of data. Provided by the `next` URL in the `Link` response header. + */ fun token(token: kotlin.String) = apply { this.token = token } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetInactivePropertiesOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperation.kt index e41a5831d1..85fbe88fa4 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Get Accepted Payment Types - EPS MOR Only + * @property params [GetPaymentOptionsOperationParams] + + */ class GetPaymentOptionsOperation( params: GetPaymentOptionsOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperationParams.kt index ff54d9b1b7..5b966e8830 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPaymentOptionsOperationParams.kt @@ -18,6 +18,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property propertyId Expedia Property ID.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ data class GetPaymentOptionsOperationParams( val propertyId: kotlin.String, val customerIp: kotlin.String? = null, @@ -35,12 +41,24 @@ data class GetPaymentOptionsOperationParams( private var customerSessionId: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param propertyId Expedia Property ID.
    + */ fun propertyId(propertyId: kotlin.String) = apply { this.propertyId = propertyId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): GetPaymentOptionsOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperation.kt index a951475d7e..569cefd71f 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Property Catalog File + + * @property params [GetPropertyCatalogFileOperationParams] + + */ class GetPropertyCatalogFileOperation( params: GetPropertyCatalogFileOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperationParams.kt index 1b2d945800..a26ac49545 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyCatalogFileOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetPropertyCatalogFileOperationParams( val customerSessionId: kotlin.String? = null, val language: kotlin.String, @@ -41,18 +50,39 @@ data class GetPropertyCatalogFileOperationParams( private var partnerPointOfSale: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ fun supplySource(supplySource: kotlin.String) = apply { this.supplySource = supplySource } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetPropertyCatalogFileOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperation.kt index c2239067d6..212390d163 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Property Content File + + * @property params [GetPropertyContentFileOperationParams] + + */ class GetPropertyContentFileOperation( params: GetPropertyContentFileOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperationParams.kt index bbc010c0bf..056775a32d 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentFileOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetPropertyContentFileOperationParams( val customerSessionId: kotlin.String? = null, val language: kotlin.String, @@ -41,18 +50,39 @@ data class GetPropertyContentFileOperationParams( private var partnerPointOfSale: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ fun supplySource(supplySource: kotlin.String) = apply { this.supplySource = supplySource } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetPropertyContentFileOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperation.kt index 2235b4fec6..0ad7a95954 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Property Content + + * @property params [GetPropertyContentOperationParams] + + */ class GetPropertyContentOperation( params: GetPropertyContentOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperationParams.kt index 492a4229b1..c0756dedf3 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyContentOperationParams.kt @@ -18,6 +18,34 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/)
    Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property allInclusive Search to include properties that have the requested `all_inclusive` values equal to true. If this parameter is not supplied, all `all_inclusive` scenarios are included. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested scenarios. * `all_rate_plans` - Return properties where `all_inclusive.all_rate_plans` is true. * `some_rate_plans` = Return properties where `all_inclusive.some_rate_plans` is true. + * @property amenityId The ID of the amenity you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested amenity IDs. This is currently only capable of searching for property level amenities. Room and rate level amenities cannot be searched on. + * @property attributeId The ID of the attribute you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested attribute IDs. + * @property brandId The ID of the brand you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested brand IDs. + * @property businessModel Search for properties with the requested business model enabled. This parameter can be supplied multiple times with different values, which will return all properties that match any of the requested business models. The value must be lower case. * `expedia_collect` - Return only properties where the payment is collected by Expedia. * `property_collect` - Return only properties where the payment is collected at the property. + * @property categoryId Search to include properties that have the requested [category ID](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists). If this parameter is not supplied, all category IDs are included. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested category IDs. + * @property categoryIdExclude Search to exclude properties that do not have the requested [category ID](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists). If this parameter is not supplied, all category IDs are included. This parameter can be supplied multiple times with different values, which will exclude properties that match any of the requested category IDs. + * @property chainId The ID of the chain you want to search for. These chain IDs can be positive and negative numbers. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested chain IDs. + * @property countryCode Search for properties with the requested country code, in ISO 3166-1 alpha-2 format. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested country codes. + * @property dateAddedEnd Search for properties added on or before the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + * @property dateAddedStart Search for properties added on or after the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + * @property dateUpdatedEnd Search for properties updated on or before the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + * @property dateUpdatedStart Search for properties updated on or after the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + * @property include Each time this parameter is specified will add to the list of fields and associated objects returned in the response. All values and field names are lower case. The values `property_ids` and `catalog` will continue to behave as specified below for backwards compatibility. All other top level field names will add the specified field to the list of fields returned in the response. See the response schema for a full list of top level field names. Additionally, the field `property_id` will always be returned regardless of what include values are passed.

    Possible values: * `property_ids` - ***DEPRECATED*** - Please use `property_id` which matches the response field name. * `catalog` - Include all property catalog fields. See [Property Catalog File endpoint](https://developers.expediagroup.com/docs/rapid/resources/rapid-api#get-/files/properties/catalog) for a list of fields. * `property_id` - Passing in the value `property_id` and no other values will limit the response to only `property_id`. Not necessary to include in combination with other field name values, as it will always be returned. * All field names found at the top level of the property content response are now valid values for inclusion. + * @property multiUnit Search for multi-unit properties. If this parameter is not supplied, both single-unit and multi-unit properties will be included. * `true` - Include only properties that are multi-unit. * `false` - Do not include properties that are multi-unit. + * @property propertyId The ID of the property you want to search for. You can provide 1 to 250 property_id parameters. + * @property propertyRatingMax Search for properties with a property rating less than or equal to the requested rating. The highest property rating value is 5.0. + * @property propertyRatingMin Search for properties with a property rating greater than or equal to the requested rating. The lowest property rating value is 0.0. + * @property spokenLanguageId The id of the spoken language you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested spoken languages. The language code as a subset of BCP47 format. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetPropertyContentOperationParams( val customerSessionId: kotlin.String? = null, val language: kotlin.String, @@ -79,56 +107,134 @@ data class GetPropertyContentOperationParams( private var paymentTerms: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/)
    Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param supplySource Options for which supply source you would like returned in the content response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ fun supplySource(supplySource: kotlin.String) = apply { this.supplySource = supplySource } + /** + * @param allInclusive Search to include properties that have the requested `all_inclusive` values equal to true. If this parameter is not supplied, all `all_inclusive` scenarios are included. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested scenarios. * `all_rate_plans` - Return properties where `all_inclusive.all_rate_plans` is true. * `some_rate_plans` = Return properties where `all_inclusive.some_rate_plans` is true. + */ fun allInclusive(allInclusive: kotlin.collections.List) = apply { this.allInclusive = allInclusive } + /** + * @param amenityId The ID of the amenity you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested amenity IDs. This is currently only capable of searching for property level amenities. Room and rate level amenities cannot be searched on. + */ fun amenityId(amenityId: kotlin.collections.List) = apply { this.amenityId = amenityId } + /** + * @param attributeId The ID of the attribute you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested attribute IDs. + */ fun attributeId(attributeId: kotlin.collections.List) = apply { this.attributeId = attributeId } + /** + * @param brandId The ID of the brand you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested brand IDs. + */ fun brandId(brandId: kotlin.collections.List) = apply { this.brandId = brandId } + /** + * @param businessModel Search for properties with the requested business model enabled. This parameter can be supplied multiple times with different values, which will return all properties that match any of the requested business models. The value must be lower case. * `expedia_collect` - Return only properties where the payment is collected by Expedia. * `property_collect` - Return only properties where the payment is collected at the property. + */ fun businessModel(businessModel: kotlin.collections.List) = apply { this.businessModel = businessModel } + /** + * @param categoryId Search to include properties that have the requested [category ID](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists). If this parameter is not supplied, all category IDs are included. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested category IDs. + */ fun categoryId(categoryId: kotlin.collections.List) = apply { this.categoryId = categoryId } + /** + * @param categoryIdExclude Search to exclude properties that do not have the requested [category ID](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists). If this parameter is not supplied, all category IDs are included. This parameter can be supplied multiple times with different values, which will exclude properties that match any of the requested category IDs. + */ fun categoryIdExclude(categoryIdExclude: kotlin.collections.List) = apply { this.categoryIdExclude = categoryIdExclude } + /** + * @param chainId The ID of the chain you want to search for. These chain IDs can be positive and negative numbers. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested chain IDs. + */ fun chainId(chainId: kotlin.collections.List) = apply { this.chainId = chainId } + /** + * @param countryCode Search for properties with the requested country code, in ISO 3166-1 alpha-2 format. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested country codes. + */ fun countryCode(countryCode: kotlin.collections.List) = apply { this.countryCode = countryCode } + /** + * @param dateAddedEnd Search for properties added on or before the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + */ fun dateAddedEnd(dateAddedEnd: kotlin.String) = apply { this.dateAddedEnd = dateAddedEnd } + /** + * @param dateAddedStart Search for properties added on or after the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + */ fun dateAddedStart(dateAddedStart: kotlin.String) = apply { this.dateAddedStart = dateAddedStart } + /** + * @param dateUpdatedEnd Search for properties updated on or before the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + */ fun dateUpdatedEnd(dateUpdatedEnd: kotlin.String) = apply { this.dateUpdatedEnd = dateUpdatedEnd } + /** + * @param dateUpdatedStart Search for properties updated on or after the requested UTC date, in ISO 8601 format (YYYY-MM-DD) + */ fun dateUpdatedStart(dateUpdatedStart: kotlin.String) = apply { this.dateUpdatedStart = dateUpdatedStart } + /** + * @param include Each time this parameter is specified will add to the list of fields and associated objects returned in the response. All values and field names are lower case. The values `property_ids` and `catalog` will continue to behave as specified below for backwards compatibility. All other top level field names will add the specified field to the list of fields returned in the response. See the response schema for a full list of top level field names. Additionally, the field `property_id` will always be returned regardless of what include values are passed.

    Possible values: * `property_ids` - ***DEPRECATED*** - Please use `property_id` which matches the response field name. * `catalog` - Include all property catalog fields. See [Property Catalog File endpoint](https://developers.expediagroup.com/docs/rapid/resources/rapid-api#get-/files/properties/catalog) for a list of fields. * `property_id` - Passing in the value `property_id` and no other values will limit the response to only `property_id`. Not necessary to include in combination with other field name values, as it will always be returned. * All field names found at the top level of the property content response are now valid values for inclusion. + */ fun include(include: kotlin.collections.List) = apply { this.include = include } + /** + * @param multiUnit Search for multi-unit properties. If this parameter is not supplied, both single-unit and multi-unit properties will be included. * `true` - Include only properties that are multi-unit. * `false` - Do not include properties that are multi-unit. + */ fun multiUnit(multiUnit: kotlin.Boolean) = apply { this.multiUnit = multiUnit } + /** + * @param propertyId The ID of the property you want to search for. You can provide 1 to 250 property_id parameters. + */ fun propertyId(propertyId: kotlin.collections.List) = apply { this.propertyId = propertyId } + /** + * @param propertyRatingMax Search for properties with a property rating less than or equal to the requested rating. The highest property rating value is 5.0. + */ fun propertyRatingMax(propertyRatingMax: kotlin.String) = apply { this.propertyRatingMax = propertyRatingMax } + /** + * @param propertyRatingMin Search for properties with a property rating greater than or equal to the requested rating. The lowest property rating value is 0.0. + */ fun propertyRatingMin(propertyRatingMin: kotlin.String) = apply { this.propertyRatingMin = propertyRatingMin } + /** + * @param spokenLanguageId The id of the spoken language you want to search for. This parameter can be supplied multiple times with different values, which will include properties that match any of the requested spoken languages. The language code as a subset of BCP47 format. + */ fun spokenLanguageId(spokenLanguageId: kotlin.collections.List) = apply { this.spokenLanguageId = spokenLanguageId } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetPropertyContentOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperation.kt index 8801baf30a..09add45628 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Property Guest Reviews + * @property params [GetPropertyGuestReviewsOperationParams] + + */ class GetPropertyGuestReviewsOperation( params: GetPropertyGuestReviewsOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperationParams.kt index 132f25fece..23fcf5c3a0 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetPropertyGuestReviewsOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property propertyId Expedia Property ID.
    + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetPropertyGuestReviewsOperationParams( val propertyId: kotlin.String, val customerSessionId: kotlin.String? = null, @@ -41,18 +50,39 @@ data class GetPropertyGuestReviewsOperationParams( private var partnerPointOfSale: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param propertyId Expedia Property ID.
    + */ fun propertyId(propertyId: kotlin.String) = apply { this.propertyId = propertyId } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetPropertyGuestReviewsOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperation.kt index 77d6fd6bd3..6b8ada9b59 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Region + * @property params [GetRegionOperationParams] + + */ class GetRegionOperation( params: GetRegionOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperationParams.kt index f8ad9d1b52..8f4a9bfcb5 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionOperationParams.kt @@ -18,6 +18,17 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property regionId ID of the region to retrieve. + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property include Options for which content to return in the response. This parameter can be supplied multiple times with different values. The value must be lower case. * details - Include the metadata, coordinates and full hierarchy of the region. * property_ids - Include the list of property IDs within the bounding polygon of the region. * property_ids_expanded - Include the list of property IDs within the bounding polygon of the region and property IDs from the surrounding area if minimal properties are within the region. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property supplySource Options for which supply source you would like returned in the geography response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ data class GetRegionOperationParams( val regionId: kotlin.String, val customerSessionId: kotlin.String? = null, @@ -45,22 +56,49 @@ data class GetRegionOperationParams( private var platformName: kotlin.String? = null, private var supplySource: kotlin.String? = null ) { + /** + * @param regionId ID of the region to retrieve. + */ fun regionId(regionId: kotlin.String) = apply { this.regionId = regionId } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param include Options for which content to return in the response. This parameter can be supplied multiple times with different values. The value must be lower case. * details - Include the metadata, coordinates and full hierarchy of the region. * property_ids - Include the list of property IDs within the bounding polygon of the region. * property_ids_expanded - Include the list of property IDs within the bounding polygon of the region and property IDs from the surrounding area if minimal properties are within the region. + */ fun include(include: kotlin.collections.List) = apply { this.include = include } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } + /** + * @param supplySource Options for which supply source you would like returned in the geography response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ fun supplySource(supplySource: kotlin.String) = apply { this.supplySource = supplySource } fun build(): GetRegionOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperation.kt index 47602a58dc..5ed7d6c8e0 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Regions + + * @property params [GetRegionsOperationParams] + + */ class GetRegionsOperation( params: GetRegionsOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperationParams.kt index 8ac855264e..6b014890cc 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetRegionsOperationParams.kt @@ -18,6 +18,23 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property include Options for which content to return in the response. This parameter can be supplied multiple times with different values. The standard and details options cannot be requested together. The value must be lower case. * standard - Include the metadata and basic hierarchy of each region. * details - Include the metadata, coordinates and full hierarchy of each region. * property_ids - Include the list of property IDs within the bounding polygon of each region. * property_ids_expanded - Include the list of property IDs within the bounding polygon of each region and property IDs from the surrounding area if minimal properties are within the region. + * @property language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property ancestorId Search for regions whose ancestors include the requested ancestor region ID. Refer to the list of [top level regions](https://developers.expediagroup.com/docs/rapid/lodging/geography/geography-reference-lists). + * @property area Filter the results to regions that intersect with a specified area.

    The area may be defined in one of two ways: * radius,region_id * radius,latitude,longitude Radius combined with region id would search an area that extends the number of kilometers out from the boundaries of the region in all directions.
    Radius combined with a single point, specified by a latitude, longitude pair would search an area in a circle with the specified radius and the point as the center.
    Radius should be specified in non-negative whole kilometers, decimals will return an error. A radius of 0 is allowed.
    When specifying the area parameter, there will be a limit of 100 results, which can be narrowed further by the limit parameter.
    Due to the number of results, unless `point_of_interest` is specified as the only type, regions of type `point_of_interest` will not be included in a request that filters to an area.

    An example use case would be searching for the closest 3 airports within 50 kilometers of a specified point.
    `&type=airport&limit=3&area=50,37.227924,-93.310036` + * @property countryCode Filter the results to a specified ISO 3166-1 alpha-2 country code. For more information see: [https://www.iso.org/obp/ui/#search/code/](https://www.iso.org/obp/ui/#search/code/) + * @property countrySubdivisionCode Filter the results down to only the ISO 3166-2 country subdivision. + * @property iataLocationCode Search for regions by the requested 3-character IATA location code, which will apply to both iata_airport_code and iata_airport_metro_code. The code must be upper case. + * @property limit Limit the number of results returned. Using the area parameter will impose a max value of 100 for this whether specified or not. + * @property supplySource Options for which supply source you would like returned in the geography response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + * @property type Filter the results to a specified region type. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class GetRegionsOperationParams( val customerSessionId: kotlin.String? = null, val include: kotlin.collections.List, @@ -57,34 +74,79 @@ data class GetRegionsOperationParams( private var paymentTerms: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param include Options for which content to return in the response. This parameter can be supplied multiple times with different values. The standard and details options cannot be requested together. The value must be lower case. * standard - Include the metadata and basic hierarchy of each region. * details - Include the metadata, coordinates and full hierarchy of each region. * property_ids - Include the list of property IDs within the bounding polygon of each region. * property_ids_expanded - Include the list of property IDs within the bounding polygon of each region and property IDs from the surrounding area if minimal properties are within the region. + */ fun include(include: kotlin.collections.List) = apply { this.include = include } + /** + * @param language Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/) Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options) + */ fun language(language: kotlin.String) = apply { this.language = language } + /** + * @param ancestorId Search for regions whose ancestors include the requested ancestor region ID. Refer to the list of [top level regions](https://developers.expediagroup.com/docs/rapid/lodging/geography/geography-reference-lists). + */ fun ancestorId(ancestorId: kotlin.String) = apply { this.ancestorId = ancestorId } + /** + * @param area Filter the results to regions that intersect with a specified area.

    The area may be defined in one of two ways: * radius,region_id * radius,latitude,longitude Radius combined with region id would search an area that extends the number of kilometers out from the boundaries of the region in all directions.
    Radius combined with a single point, specified by a latitude, longitude pair would search an area in a circle with the specified radius and the point as the center.
    Radius should be specified in non-negative whole kilometers, decimals will return an error. A radius of 0 is allowed.
    When specifying the area parameter, there will be a limit of 100 results, which can be narrowed further by the limit parameter.
    Due to the number of results, unless `point_of_interest` is specified as the only type, regions of type `point_of_interest` will not be included in a request that filters to an area.

    An example use case would be searching for the closest 3 airports within 50 kilometers of a specified point.
    `&type=airport&limit=3&area=50,37.227924,-93.310036` + */ fun area(area: kotlin.String) = apply { this.area = area } + /** + * @param countryCode Filter the results to a specified ISO 3166-1 alpha-2 country code. For more information see: [https://www.iso.org/obp/ui/#search/code/](https://www.iso.org/obp/ui/#search/code/) + */ fun countryCode(countryCode: kotlin.collections.List) = apply { this.countryCode = countryCode } + /** + * @param countrySubdivisionCode Filter the results down to only the ISO 3166-2 country subdivision. + */ fun countrySubdivisionCode(countrySubdivisionCode: kotlin.collections.List) = apply { this.countrySubdivisionCode = countrySubdivisionCode } + /** + * @param iataLocationCode Search for regions by the requested 3-character IATA location code, which will apply to both iata_airport_code and iata_airport_metro_code. The code must be upper case. + */ fun iataLocationCode(iataLocationCode: kotlin.String) = apply { this.iataLocationCode = iataLocationCode } + /** + * @param limit Limit the number of results returned. Using the area parameter will impose a max value of 100 for this whether specified or not. + */ fun limit(limit: java.math.BigDecimal) = apply { this.limit = limit } + /** + * @param supplySource Options for which supply source you would like returned in the geography response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ fun supplySource(supplySource: kotlin.String) = apply { this.supplySource = supplySource } + /** + * @param type Filter the results to a specified region type. + */ fun type(type: kotlin.collections.List) = apply { this.type = type } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): GetRegionsOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperation.kt index cc298d13b7..ba16de5e63 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Retrieve Booking + * @property params [GetReservationByItineraryIdOperationParams] + + */ class GetReservationByItineraryIdOperation( params: GetReservationByItineraryIdOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperationParams.kt index 88a6203946..bf506cb79e 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationByItineraryIdOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The retrieve call has a test header that can be used to return set responses. Passing standard in the Test header will retrieve a test booking, and passing any of the errors listed below will return a stubbed error response that you can use to test your error handling code. Additionally, refer to the Test Request documentation for more details on how these header values are used. * `standard` - Requires valid test booking. * `service_unavailable` * `internal_server_error` + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property email Email associated with the booking. Special characters in the local part or domain should be encoded. (Email is required if the token is not provided the request)
    + * @property include Options for which information to return in the response. The value must be lower case. * history - Include itinerary history, showing details of the changes made to this itinerary + */ data class GetReservationByItineraryIdOperationParams( val itineraryId: kotlin.String, val customerIp: kotlin.String, @@ -41,18 +50,39 @@ data class GetReservationByItineraryIdOperationParams( private var email: kotlin.String? = null, private var include: kotlin.collections.List? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The retrieve call has a test header that can be used to return set responses. Passing standard in the Test header will retrieve a test booking, and passing any of the errors listed below will return a stubbed error response that you can use to test your error handling code. Additionally, refer to the Test Request documentation for more details on how these header values are used. * `standard` - Requires valid test booking. * `service_unavailable` * `internal_server_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } + /** + * @param email Email associated with the booking. Special characters in the local part or domain should be encoded. (Email is required if the token is not provided the request)
    + */ fun email(email: kotlin.String) = apply { this.email = email } + /** + * @param include Options for which information to return in the response. The value must be lower case. * history - Include itinerary history, showing details of the changes made to this itinerary + */ fun include(include: kotlin.collections.List) = apply { this.include = include } fun build(): GetReservationByItineraryIdOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperation.kt index 00c1f7fc80..b72c169c50 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Search for and retrieve Bookings with Affiliate Reference Id + + * @property params [GetReservationOperationParams] + + */ class GetReservationOperation( params: GetReservationOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperationParams.kt index 8c1c2b1c1f..a8d8f66f6c 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/GetReservationOperationParams.kt @@ -18,6 +18,14 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property affiliateReferenceId The affilliate reference id value. This field supports a maximum of 28 characters. + * @property email Email associated with the booking. Special characters in the local part or domain should be encoded.
    + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The retrieve call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `internal_server_error` + * @property include Options for which information to return in the response. The value must be lower case. * history - Include itinerary history, showing details of the changes made to this itinerary + */ data class GetReservationOperationParams( val customerIp: kotlin.String, val customerSessionId: kotlin.String? = null, @@ -39,16 +47,34 @@ data class GetReservationOperationParams( private var email: kotlin.String? = null, private var include: kotlin.collections.List? = null ) { + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The retrieve call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test booking. * `service_unavailable` * `internal_server_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param affiliateReferenceId The affilliate reference id value. This field supports a maximum of 28 characters. + */ fun affiliateReferenceId(affiliateReferenceId: kotlin.String) = apply { this.affiliateReferenceId = affiliateReferenceId } + /** + * @param email Email associated with the booking. Special characters in the local part or domain should be encoded.
    + */ fun email(email: kotlin.String) = apply { this.email = email } + /** + * @param include Options for which information to return in the response. The value must be lower case. * history - Include itinerary history, showing details of the changes made to this itinerary + */ fun include(include: kotlin.collections.List) = apply { this.include = include } fun build(): GetReservationOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperation.kt index 6381e75906..0860e09033 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperation.kt @@ -19,6 +19,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Operation import com.expediagroup.sdk.rapid.models.PropertiesGeoJsonRequest +/** + * Properties within Polygon + * @property requestBody [PropertiesGeoJsonRequest] + + * @property params [PostGeographyOperationParams] + + */ class PostGeographyOperation( requestBody: PropertiesGeoJsonRequest?, params: PostGeographyOperationParams diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperationParams.kt index 980240aacd..09bbb8fd69 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostGeographyOperationParams.kt @@ -18,6 +18,16 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property include Options for which content to return in the response. The value must be lower case. * property_ids - Include the property IDs. + * @property propertiesGeoJsonRequest + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property supplySource Options for which supply source you would like returned in the geography response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ data class PostGeographyOperationParams( val customerSessionId: kotlin.String? = null, val include: kotlin.String, @@ -41,18 +51,39 @@ data class PostGeographyOperationParams( private var platformName: kotlin.String? = null, private var supplySource: kotlin.String? = null ) { + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param include Options for which content to return in the response. The value must be lower case. * property_ids - Include the property IDs. + */ fun include(include: kotlin.String) = apply { this.include = include } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } + /** + * @param supplySource Options for which supply source you would like returned in the geography response. This parameter may only be supplied once and will return all properties that match the requested supply source. An error is thrown if the parameter is provided multiple times. * `expedia` - Standard Expedia supply. * `vrbo` - VRBO supply - This option is restricted to partners who have VRBO supply enabled for their profile. See [Vacation Rentals](https://developers.expediagroup.com/docs/rapid/lodging/vacation-rentals) for more information. + */ fun supplySource(supplySource: kotlin.String) = apply { this.supplySource = supplySource } fun build(): PostGeographyOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperation.kt index c3b59c0488..63842656bd 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperation.kt @@ -19,6 +19,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Operation import com.expediagroup.sdk.rapid.models.CreateItineraryRequest +/** + * Create Booking + * @property requestBody [CreateItineraryRequest] + + * @property params [PostItineraryOperationParams] + + */ class PostItineraryOperation( requestBody: CreateItineraryRequest?, params: PostItineraryOperationParams diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperationParams.kt index 509ce7c6e9..18d596fe63 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostItineraryOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property createItineraryRequest + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The book call has a test header that can be used to return set responses with the following keywords:
    * `standard` * `complete_payment_session` * `service_unavailable` * `internal_server_error` * `price_mismatch` * `cc_declined` * `rooms_unavailable` + */ data class PostItineraryOperationParams( val customerIp: kotlin.String, val customerSessionId: kotlin.String? = null, @@ -35,12 +42,24 @@ data class PostItineraryOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The book call has a test header that can be used to return set responses with the following keywords:
    * `standard` * `complete_payment_session` * `service_unavailable` * `internal_server_error` * `price_mismatch` * `cc_declined` * `rooms_unavailable` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): PostItineraryOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperation.kt index 5944fafe0f..6570054bc5 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperation.kt @@ -19,6 +19,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Operation import com.expediagroup.sdk.rapid.models.PaymentSessionsRequest +/** + * Register Payments + * @property requestBody [PaymentSessionsRequest] + + * @property params [PostPaymentSessionsOperationParams] + + */ class PostPaymentSessionsOperation( requestBody: PaymentSessionsRequest?, params: PostPaymentSessionsOperationParams diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperationParams.kt index 7f11207a53..bdc8d29e23 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PostPaymentSessionsOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property paymentSessionsRequest + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The book call has a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `internal_server_error` + */ data class PostPaymentSessionsOperationParams( val customerIp: kotlin.String, val customerSessionId: kotlin.String? = null, @@ -35,12 +42,24 @@ data class PostPaymentSessionsOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The book call has a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `internal_server_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): PostPaymentSessionsOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperation.kt index 5796b14dec..ad99aabf49 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Price-Check + * @property params [PriceCheckOperationParams] + + */ class PriceCheckOperation( params: PriceCheckOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperationParams.kt index ea92231c34..9126bbecf1 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PriceCheckOperationParams.kt @@ -18,6 +18,15 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property propertyId Expedia Property ID.
    + * @property roomId Room ID of a property.
    + * @property rateId Rate ID of a room.
    + * @property token A hashed collection of query parameters. Used to maintain state across calls. This token is provided as part of the price check link from the shop response. + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test Price check calls have a test header that can be used to return set responses with the following keywords: * `available` * `price_changed` * `sold_out` * `service_unavailable` * `unknown_internal_error` + */ data class PriceCheckOperationParams( val propertyId: kotlin.String, val roomId: kotlin.String, @@ -41,18 +50,39 @@ data class PriceCheckOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param propertyId Expedia Property ID.
    + */ fun propertyId(propertyId: kotlin.String) = apply { this.propertyId = propertyId } + /** + * @param roomId Room ID of a property.
    + */ fun roomId(roomId: kotlin.String) = apply { this.roomId = roomId } + /** + * @param rateId Rate ID of a room.
    + */ fun rateId(rateId: kotlin.String) = apply { this.rateId = rateId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test Price check calls have a test header that can be used to return set responses with the following keywords: * `available` * `price_changed` * `sold_out` * `service_unavailable` * `unknown_internal_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token A hashed collection of query parameters. Used to maintain state across calls. This token is provided as part of the price check link from the shop response. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): PriceCheckOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperation.kt index d819bdd09e..0e163e8925 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Complete Payment Session + * @property params [PutCompletePaymentSessionOperationParams] + + */ class PutCompletePaymentSessionOperation( params: PutCompletePaymentSessionOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperationParams.kt index adf276027d..067651d817 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutCompletePaymentSessionOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The payment-sessions call has a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `internal_server_error` + */ data class PutCompletePaymentSessionOperationParams( val itineraryId: kotlin.String, val customerIp: kotlin.String, @@ -37,14 +44,29 @@ data class PutCompletePaymentSessionOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The payment-sessions call has a test header that can be used to return set responses with the following keywords:
    * `standard` * `service_unavailable` * `internal_server_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): PutCompletePaymentSessionOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperation.kt index b7e152c641..17d430f45a 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperation.kt @@ -19,6 +19,11 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Resume Booking + * @property params [PutResumeBookingOperationParams] + + */ class PutResumeBookingOperation( params: PutResumeBookingOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperationParams.kt index 855c6497aa..6f9b4caeb1 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/PutResumeBookingOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + * @property itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + * @property token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + * @property customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + * @property test The resume call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test held booking. * `service_unavailable` - Returns the HTTP 202 response caused by partial service unavailablity. * `internal_server_error` + */ data class PutResumeBookingOperationParams( val itineraryId: kotlin.String, val customerIp: kotlin.String, @@ -37,14 +44,29 @@ data class PutResumeBookingOperationParams( private var test: kotlin.String? = null, private var token: kotlin.String? = null ) { + /** + * @param itineraryId This parameter is used only to prefix the token value - no ID value is used.
    + */ fun itineraryId(itineraryId: kotlin.String) = apply { this.itineraryId = itineraryId } + /** + * @param customerIp IP address of the customer, as captured by your integration.
    Ensure your integration passes the customer's IP, not your own. This value helps determine their location and assign the correct payment gateway.
    Also used for fraud recovery and other important analytics. + */ fun customerIp(customerIp: kotlin.String) = apply { this.customerIp = customerIp } + /** + * @param customerSessionId Insert your own unique value for each user session, beginning with the first API call. Continue to pass the same value for each subsequent API call during the user's session, using a new value for every new customer session.
    Including this value greatly eases EPS's internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user's session. + */ fun customerSessionId(customerSessionId: kotlin.String) = apply { this.customerSessionId = customerSessionId } + /** + * @param test The resume call has a test header that can be used to return set responses with the following keywords:
    * `standard` - Requires valid test held booking. * `service_unavailable` - Returns the HTTP 202 response caused by partial service unavailablity. * `internal_server_error` + */ fun test(test: kotlin.String) = apply { this.test = test } + /** + * @param token Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed. + */ fun token(token: kotlin.String) = apply { this.token = token } fun build(): PutResumeBookingOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperation.kt index 20818c5f52..0517b05391 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperation.kt @@ -19,6 +19,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Operation import com.expediagroup.sdk.rapid.models.TestNotificationRequest +/** + * Request Test Notification + * @property requestBody [TestNotificationRequest] + + * @property params [RequestTestNotificationOperationParams] + + */ class RequestTestNotificationOperation( requestBody: TestNotificationRequest?, params: RequestTestNotificationOperationParams diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperationParams.kt index ac42b0bb42..1439ed914a 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestTestNotificationOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property testNotificationRequest + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class RequestTestNotificationOperationParams( val billingTerms: kotlin.String? = null, val partnerPointOfSale: kotlin.String? = null, @@ -35,12 +42,24 @@ data class RequestTestNotificationOperationParams( private var paymentTerms: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): RequestTestNotificationOperationParams { diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperation.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperation.kt index f44ce713ae..80204285ff 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperation.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperation.kt @@ -19,6 +19,12 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.Nothing import com.expediagroup.sdk.core.model.Operation +/** + * Request Undelivered Notifications + + * @property params [RequestUndeliveredNotificationsOperationParams] + + */ class RequestUndeliveredNotificationsOperation( params: RequestUndeliveredNotificationsOperationParams ) : Operation< diff --git a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperationParams.kt b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperationParams.kt index 5e7c80be65..1e0047f577 100644 --- a/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperationParams.kt +++ b/code/src/main/kotlin/com/expediagroup/sdk/rapid/operations/RequestUndeliveredNotificationsOperationParams.kt @@ -18,6 +18,13 @@ package com.expediagroup.sdk.rapid.operations import com.expediagroup.sdk.core.model.OperationParams +/** + * @property undeliverable Undeliverable notifications are returned when this parameter is set to `true`. + * @property billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + * @property partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + * @property paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + * @property platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ data class RequestUndeliveredNotificationsOperationParams( val undeliverable: kotlin.Boolean, val billingTerms: kotlin.String? = null, @@ -37,14 +44,29 @@ data class RequestUndeliveredNotificationsOperationParams( private var paymentTerms: kotlin.String? = null, private var platformName: kotlin.String? = null ) { + /** + * @param undeliverable Undeliverable notifications are returned when this parameter is set to `true`. + */ fun undeliverable(undeliverable: kotlin.Boolean) = apply { this.undeliverable = undeliverable } + /** + * @param billingTerms This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately. + */ fun billingTerms(billingTerms: kotlin.String) = apply { this.billingTerms = billingTerms } + /** + * @param partnerPointOfSale This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun partnerPointOfSale(partnerPointOfSale: kotlin.String) = apply { this.partnerPointOfSale = partnerPointOfSale } + /** + * @param paymentTerms This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately. + */ fun paymentTerms(paymentTerms: kotlin.String) = apply { this.paymentTerms = paymentTerms } + /** + * @param platformName This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately. + */ fun platformName(platformName: kotlin.String) = apply { this.platformName = platformName } fun build(): RequestUndeliveredNotificationsOperationParams {