amadeus 2.0.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a30ea6344ae22d11df337a484c13e074a60e59e60807d00841987be4b6172d91
4
- data.tar.gz: ab8c30fcc9ae6da0b7fb4e999fa2d4ae422027835776f2fb9cdcb4d37d60846c
3
+ metadata.gz: ffd090d42d800bbfae01e30b095e6907ee66922875eb38e81e83d0dfcf93688c
4
+ data.tar.gz: 1d34a30f43448bae789456f43fb2e96ce89abd63561b7318aec8086dc3b9bf0f
5
5
  SHA512:
6
- metadata.gz: bc4ca3df59611e1d592a16f13f81496bd54fc6c381777f24ce148a4f077abb523e1363e14940dd727746ce74c4e310af59b66903f822d46ea9fe268d29ddc870
7
- data.tar.gz: 331719a2fb0cb21758e86efefbfd2a541c3ce04d16767b875734d1bcab62dc40e683a02d36a2a4ce567165d85d75924e642954ec5175b156bca48581cdbf92b9
6
+ metadata.gz: 3005646311109b6551347efd3ebe559d6f091e9210a84d77666f898e1a12e3f4f7c5166b2d49ddc9af8c67c859c1d7ae45b156656b917d3fe081ee339de81cc9
7
+ data.tar.gz: 65046569d983b9a988de5fee812b5a38e85311963161f9b9e94841b8f9cb98e524cb2c7e2e162b8f64dd27fdc085213d2a3d65a54ae93f872d40fd4f73082d6a
@@ -1,4 +1,20 @@
1
1
  # Changelog
2
+ ## 3.0.0 - 2019-01-22
3
+
4
+ ## Hotel Search v2 has been deployed (Hotel Search v1 is now deprecated)
5
+
6
+ ### General
7
+ * URLs for all three endpoints have been simplified for ease-of-use and consistency
8
+ ### Find Hotels - 1st endpoint
9
+ * The parameter `hotels` has been renamed to `hotelIds`
10
+ ### View Hotel Rooms - 2nd endpoint
11
+ * Update from `amadeus.shopping.hotel('IALONCHO').hotel_offers.get` to `amadeus.shopping.hotel_offers_by_hotel.get(hotelId: 'IALONCHO')`
12
+ * Now get all images in ‘View Hotels Rooms’ endpoint using the view parameter as `FULL_ALL_IMAGES`
13
+ ### View Room Details - 3rd endpoint
14
+ * Updated from `amadeus.shopping.hotel('IALONCHO').offer('XXX').get` to `amadeus.shopping.hotel_offer('XXX').get`
15
+ * Image category added under Media in the response
16
+ * Hotel distance added in the response
17
+ * Response now refers to the common HotelOffer object model
2
18
 
3
19
  ## 2.0.0 - 2018-10-12
4
20
 
@@ -6,7 +22,7 @@
6
22
  * 1st endpoint to find the most searched destinations
7
23
  * 2nd endpoint to have more data about a dedicated origin & destination
8
24
 
9
- [Flight Most Booked Destinations](https://developers.amadeus.com/self-service/category/203/api-doc/6):
25
+ [Flight Most Booked Destinations](https://developers.amadeus.com/self-service/category/203/api-doc/27):
10
26
  * Rename origin to originCityCode
11
27
 
12
28
  [Flight Most Traveled Destinations](https://developers.amadeus.com/self-service/category/203/api-doc/7):
data/README.md CHANGED
@@ -14,7 +14,7 @@ documentation](https://amadeus4dev.github.io/amadeus-ruby/) on
14
14
 
15
15
  ## Installation
16
16
 
17
- This gem requires Ruby 2.2+. You can install install it directly or via bundler.
17
+ This gem requires Ruby 2.3+. You can install install it directly or via bundler.
18
18
  #### Command line
19
19
  ```bash
20
20
  gem install amadeus
@@ -39,7 +39,7 @@ amadeus = Amadeus::Client.new({
39
39
  })
40
40
 
41
41
  begin
42
- puts amadeus.reference_data.urls.checkin_links.get({ airline: 'BA' })
42
+ puts amadeus.reference_data.urls.checkin_links.get({ airlineCode: 'BA' })
43
43
  rescue Amadeus::ResponseError => error
44
44
  puts error
45
45
  end
@@ -90,24 +90,24 @@ in-depth information about every SDK method, its arguments and return types.
90
90
 
91
91
  This library conveniently maps every API path to a similar path.
92
92
 
93
- For example, `GET /v2/reference-data/urls/checkin-links?airline=BA` would be:
93
+ For example, `GET /v2/reference-data/urls/checkin-links?airlineCode=BA` would be:
94
94
 
95
95
  ```rb
96
- amadeus.reference_data.urls.checkin_links.get(airline: 'BA')
96
+ amadeus.reference_data.urls.checkin_links.get(airlineCode: 'BA')
97
97
  ```
98
98
 
99
99
  Similarly, to select a resource by ID, you can pass in the ID to the **singular** path.
100
100
 
101
- For example, `GET /v1/shopping/hotel/123/offers/234` would be:
101
+ For example, `GET /v2/shopping/hotel-offers/XZY` would be:
102
102
 
103
103
  ```rb
104
- amadeus.hotel(123).offer(234).get(...)
104
+ amadeus.shopping.hotel_offer('D5BEE9D0D08B6678C2F5FAD910DC110BCDA187D21D4FCE68ED423426D0A246BB').get
105
105
  ```
106
106
 
107
107
  You can make any arbitrary API call as well directly with the `.get` method:
108
108
 
109
109
  ```rb
110
- amadeus.get('/v2/reference-data/urls/checkin-links', airline: 'BA')
110
+ amadeus.get('/v2/reference-data/urls/checkin-links', airlineCode: 'BA')
111
111
  ```
112
112
 
113
113
  ## Response
@@ -184,10 +184,10 @@ amadeus.shopping.flight_dates.get(origin: 'NYC', destination: 'MAD')
184
184
  amadeus.shopping.flight_offers.get(origin: 'NYC', destination: 'MAD', departureDate: '2019-08-01')
185
185
 
186
186
  # Flight Check-in Links
187
- amadeus.reference_data.urls.checkin_links.get({ airlineCode: 'BA' })
187
+ amadeus.reference_data.urls.checkin_links.get(airlineCode: 'BA')
188
188
 
189
189
  # Airline Code Lookup
190
- amadeus.reference_data.airlines.get({ airlineCodes: 'U2' })
190
+ amadeus.reference_data.airlines.get(airlineCodes: 'U2')
191
191
 
192
192
  # Airport & City Search (autocomplete)
193
193
  # Find all the cities and airports starting by the keyword 'LON'
@@ -198,8 +198,8 @@ amadeus.reference_data.locations.get(
198
198
  # Get a specific city or airport based on its id
199
199
  amadeus.reference_data.location('ALHR').get
200
200
 
201
- # Airport Nearest Relevant
202
- amadeus.reference_data.locations.airports.get(longitude: 49.0000, latitude: 2.55)
201
+ # Airport Nearest Relevant (for London)
202
+ amadeus.reference_data.locations.airports.get(longitude: 0.1278, latitude: 51.5074)
203
203
 
204
204
  # Flight Most Searched Destinations
205
205
  # Get the most searched destinations from an origin
@@ -224,9 +224,9 @@ amadeus.travel.analytics.air_traffic.busiest_period.get(
224
224
  # Get list of hotels by cityCode
225
225
  amadeus.shopping.hotel_offers.get(cityCode: 'MAD')
226
226
  # Get list of offers for a specific hotel
227
- amadeus.shopping.hotel('SMPARCOL').hotel_offers.get
228
- # Confirm the availability of a specific offer for a specific hotel
229
- amadeus.shopping.hotel('SMPARCOL').offer('4BA070CE929E135B3268A9F2D0C51E9D4A6CF318BA10485322FA2C7E78C7852E').get
227
+ amadeus.shopping.hotel_offers_by_hotel.get(hotelId: 'IALONCHO')
228
+ # Confirm the availability of a specific offer
229
+ amadeus.shopping.hotel_offer('D5BEE9D0D08B6678C2F5FAD910DC110BCDA187D21D4FCE68ED423426D0A246BB').get
230
230
  ```
231
231
  ## Development & Contributing
232
232
 
@@ -248,4 +248,4 @@ to help you. You can find us on
248
248
  [gem]: https://rubygems.org/gems/amadeus
249
249
  [travis]: http://travis-ci.org/amadeus4dev/amadeus-ruby
250
250
  [support]: http://developers.amadeus.com/support
251
- [codeclimate]: https://codeclimate.com/github/amadeus4dev/amadeus-ruby
251
+ [codeclimate]: https://codeclimate.com/github/amadeus4dev/amadeus-ruby
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.required_ruby_version = '>= 2.2.0'
28
28
 
29
29
  spec.add_development_dependency 'awesome_print', '~> 1.8'
30
- spec.add_development_dependency 'bundler', '~> 1.16'
30
+ spec.add_development_dependency 'bundler', '~> 2.0.1'
31
31
  spec.add_development_dependency 'guard', '~> 2.14'
32
32
  spec.add_development_dependency 'guard-rake', '~> 1.0'
33
33
  spec.add_development_dependency 'guard-yard', '~> 2.2'
@@ -22,9 +22,8 @@ require 'amadeus/namespaces/shopping/flight_destinations'
22
22
  require 'amadeus/namespaces/shopping/flight_offers'
23
23
  require 'amadeus/namespaces/shopping/flight_dates'
24
24
  require 'amadeus/namespaces/shopping/hotel_offers'
25
- require 'amadeus/namespaces/shopping/hotel'
26
- require 'amadeus/namespaces/shopping/hotel/offer'
27
- require 'amadeus/namespaces/shopping/hotel/hotel_offers'
25
+ require 'amadeus/namespaces/shopping/hotel_offer'
26
+ require 'amadeus/namespaces/shopping/hotel_offers_by_hotel'
28
27
  require 'amadeus/namespaces/travel/analytics'
29
28
  require 'amadeus/namespaces/travel/analytics/air_traffic'
30
29
  require 'amadeus/namespaces/travel/analytics/air_traffic/traveled'
@@ -45,7 +45,6 @@ module Amadeus
45
45
 
46
46
  # The namespace for the Airline Code APIs - accessing a specific airline
47
47
  #
48
- # @param [Number] airline_id The IATA ID for the airline
49
48
  # @return [Amadeus::Namespaces::ReferenceData::Airlines]
50
49
  # @example
51
50
  # amadeus.reference_data.airlines('U2')
@@ -51,15 +51,25 @@ module Amadeus
51
51
  Amadeus::Namespaces::Shopping::HotelOffers.new(client)
52
52
  end
53
53
 
54
- # The namespace for the Hotels API:
54
+ # The namespace for the HotelOffersByHotel API:
55
55
  #
56
- # @param [Number] hotel_id The ID for the hotel to find offers for
57
- # @return [Amadeus::Namespaces::Shopping::Hotel]
56
+ # @return [Amadeus::Namespaces::Shopping::HotelOffersByHotel]
58
57
  # @example
59
- # amadeus.shopping.hotel(hotel_id)
58
+ # amadeus.shopping.hotel_offers_by_hotel
60
59
  #
61
- def hotel(hotel_id)
62
- Amadeus::Namespaces::Shopping::Hotel.new(client, hotel_id)
60
+ def hotel_offers_by_hotel
61
+ Amadeus::Namespaces::Shopping::HotelOffersByHotel.new(client)
62
+ end
63
+
64
+ # The namespace for the HotelOffers API:
65
+ #
66
+ # @param [Number] offer_id The ID for the offer for a specific hotel
67
+ # @return [Amadeus::Namespaces::Shopping::HotelOffer]
68
+ # @example
69
+ # amadeus.shopping.hotel_offer(offer_id)
70
+ #
71
+ def hotel_offer(offer_id)
72
+ Amadeus::Namespaces::Shopping::HotelOffer.new(client, offer_id)
63
73
  end
64
74
  end
65
75
  end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Amadeus
4
+ module Namespaces
5
+ class Shopping
6
+ # A namespaced client for the
7
+ # +/v2/shopping/hotel-offers/:offer_id+ endpoints
8
+ #
9
+ # Access via the +Amadeus::Client+ object
10
+ #
11
+ # amadeus = Amadeus::Client.new
12
+ # amadeus.shopping.hotel_offer('XXXX')
13
+ #
14
+ class HotelOffer < Amadeus::Client::Decorator
15
+ # the Offer ID
16
+ attr_reader :offer_id
17
+
18
+ # Initialize this namespaced client with an
19
+ # {Amadeus::Client} instance and an Offer ID
20
+ #
21
+ # @param [Amadeus::Client] client
22
+ # @param [Number] offer_id
23
+ #
24
+ def initialize(client, offer_id)
25
+ super(client)
26
+ @offer_id = offer_id
27
+ end
28
+
29
+ # Return all available details of a specific hotel offer
30
+ #
31
+ # @return [Amadeus::Response] a parsed response
32
+ # @raise [Amadeus::Base] an exception if the call failed
33
+ # @example
34
+ # amadeus.shopping.hotel_offer('XXXX').get
35
+ #
36
+ def get(params = {})
37
+ client.get("/v2/shopping/hotel-offers/#{@offer_id}", params)
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -4,7 +4,7 @@ module Amadeus
4
4
  module Namespaces
5
5
  class Shopping
6
6
  # A namespaced client for the
7
- # +/v1/shopping/hotel-offers+ endpoints
7
+ # +/v2/shopping/hotel-offers+ endpoints
8
8
  #
9
9
  # Access via the +Amadeus::Client+ object
10
10
  #
@@ -19,7 +19,7 @@ module Amadeus
19
19
  # search around. Example: 52.5238
20
20
  # @option params [Double] :longitude Longitude of geographic location to
21
21
  # search around. Example: 13.3835
22
- # @option params [String] :hotels Comma separated list of Amadeus hotel
22
+ # @option params [String] :hotelIds Comma separated list of Amadeus hotel
23
23
  # codes to request. Example: RTPAR001
24
24
  # @return [Amadeus::Response] a parsed response
25
25
  # @raise [Amadeus::Base] an exception if the call failed
@@ -29,7 +29,7 @@ module Amadeus
29
29
  # )
30
30
  #
31
31
  def get(params = {})
32
- client.get('/v1/shopping/hotel-offers', params)
32
+ client.get('/v2/shopping/hotel-offers', params)
33
33
  end
34
34
  end
35
35
  end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Amadeus
4
+ module Namespaces
5
+ class Shopping
6
+ # A namespaced client for the
7
+ # +/v2/shopping/hotel-offers/by-hotel+ endpoints
8
+ #
9
+ # Access via the +Amadeus::Client+ object
10
+ #
11
+ # amadeus = Amadeus::Client.new
12
+ # amadeus.shopping.hotel_offers
13
+ #
14
+ class HotelOffersByHotel < Amadeus::Client::Decorator
15
+ # Get the different offers for a dedicated hotel
16
+ #
17
+ # @option params [String] :hotelId Amadeus Property Code (8 chars)
18
+ # @return [Amadeus::Response] a parsed response
19
+ # @raise [Amadeus::Base] an exception if the call failed
20
+ # @example Get all offers for Holiday Inn Paris Notre Dame
21
+ # amadeus.shopping.hotel_offers_by_hotel.get(
22
+ # hotelId: 'XKPARC12'
23
+ # )
24
+ #
25
+ def get(params = {})
26
+ client.get('/v2/shopping/hotel-offers/by-hotel', params)
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -31,13 +31,13 @@ module Amadeus
31
31
  # in YYYY-MM format - required
32
32
  # @return [Amadeus::Response] a parsed response
33
33
  # @raise [Amadeus::Base] an exception if the call failed
34
- # @example How many people in France searched for a trip
35
- # from Nice to Paris in September 2015?
34
+ # @example How many people in Spain searched for a trip
35
+ # from Madrid to New-York in August 2017?
36
36
  # amadeus.travel.analytics.air_traffic.searched_by_destination.get(
37
- # originCityCode: 'NCE',
38
- # destinationCityCode: 'PAR',
39
- # searchPeriod: '2015-09',
40
- # marketCountryCode: 'FR'
37
+ # originCityCode: 'MAD',
38
+ # destinationCityCode: 'NYC',
39
+ # searchPeriod: '2017-08',
40
+ # marketCountryCode: 'ES'
41
41
  # )
42
42
  #
43
43
  def get(params = {})
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Amadeus
4
4
  # The current client version
5
- VERSION = '2.0.0'.freeze
5
+ VERSION = '3.0.0'.freeze
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amadeus
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amadeus
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2018-11-12 00:00:00.000000000 Z
13
+ date: 2019-01-22 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: awesome_print
@@ -32,14 +32,14 @@ dependencies:
32
32
  requirements:
33
33
  - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: '1.16'
35
+ version: 2.0.1
36
36
  type: :development
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '1.16'
42
+ version: 2.0.1
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: guard
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -222,10 +222,9 @@ files:
222
222
  - lib/amadeus/namespaces/shopping/flight_dates.rb
223
223
  - lib/amadeus/namespaces/shopping/flight_destinations.rb
224
224
  - lib/amadeus/namespaces/shopping/flight_offers.rb
225
- - lib/amadeus/namespaces/shopping/hotel.rb
226
- - lib/amadeus/namespaces/shopping/hotel/hotel_offers.rb
227
- - lib/amadeus/namespaces/shopping/hotel/offer.rb
225
+ - lib/amadeus/namespaces/shopping/hotel_offer.rb
228
226
  - lib/amadeus/namespaces/shopping/hotel_offers.rb
227
+ - lib/amadeus/namespaces/shopping/hotel_offers_by_hotel.rb
229
228
  - lib/amadeus/namespaces/travel.rb
230
229
  - lib/amadeus/namespaces/travel/analytics.rb
231
230
  - lib/amadeus/namespaces/travel/analytics/air_traffic.rb
@@ -254,8 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
254
253
  - !ruby/object:Gem::Version
255
254
  version: '0'
256
255
  requirements: []
257
- rubyforge_project:
258
- rubygems_version: 2.7.8
256
+ rubygems_version: 3.0.2
259
257
  signing_key:
260
258
  specification_version: 4
261
259
  summary: Amadeus travel APIs
@@ -1,56 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Amadeus
4
- module Namespaces
5
- class Shopping
6
- # A namespaced client for the
7
- # +/v1/shopping/hotels+ endpoints
8
- #
9
- # Access via the +Amadeus::Client+ object
10
- #
11
- # amadeus = Amadeus::Client.new
12
- # amadeus.shopping.hotels(123)
13
- #
14
- class Hotel < Amadeus::Client::Decorator
15
- # the Hotel ID
16
- attr_reader :hotel_id
17
-
18
- # Initialize this namespaced client with an
19
- # {Amadeus::Client} instance and a Hotel ID
20
- #
21
- # @param [Amadeus::Client] client
22
- # @param [Number] hotel_id
23
- #
24
- def initialize(client, hotel_id)
25
- super(client)
26
- @hotel_id = hotel_id
27
- end
28
-
29
- # The namespace for the Hotels::Offers API:
30
- #
31
- # @param [Number] offer_id The ID for the offer to find details for
32
- # @return [Amadeus::Namespaces::Shopping::Hotels::Offers]
33
- # @example
34
- # amadeus.shopping.hotel('SMPARCOL').offer(234)
35
- #
36
- def offer(offer_id)
37
- Amadeus::Namespaces::Shopping::Hotel::Offer.new(
38
- client, @hotel_id, offer_id
39
- )
40
- end
41
-
42
- # The namespace for the Hotels::HotelOffers API:
43
- #
44
- # @return [Amadeus::Namespaces::Shopping::Hotels::HotelOffers]
45
- # @example
46
- # amadeus.shopping.hotel('SMPARCOL').hotel_offers
47
- #
48
- def hotel_offers
49
- Amadeus::Namespaces::Shopping::Hotel::HotelOffers.new(
50
- client, @hotel_id
51
- )
52
- end
53
- end
54
- end
55
- end
56
- end
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Amadeus
4
- module Namespaces
5
- class Shopping
6
- class Hotel
7
- # A namespaced client for the
8
- # +/v1/shopping/hotels/:id/hotel-offers+ endpoints
9
- #
10
- # Access via the +Amadeus::Client+ object
11
- #
12
- # amadeus = Amadeus::Client.new
13
- # amadeus.shopping.hotels.hotel_offers
14
- #
15
- class HotelOffers < Amadeus::Client::Decorator
16
- # the Hotel ID
17
- attr_reader :hotel_id
18
-
19
- # Initialize this namespaced client with an
20
- # {Amadeus::Client} instance and a Hotel ID
21
- #
22
- # @param [Amadeus::Client] client
23
- # @param [Number] hotel_id
24
- #
25
- def initialize(client, hotel_id)
26
- super(client)
27
- @hotel_id = hotel_id
28
- end
29
-
30
- # Get one hotel and its available offers
31
- #
32
- # @return [Amadeus::Response] a parsed response
33
- # @raise [Amadeus::Base] an exception if the call failed
34
- # @example Search for hotels in London
35
- # amadeus.shopping.hotel('SMPARCOL').hotel_offers.get
36
- #
37
- def get(params = {})
38
- client.get("/v1/shopping/hotels/#{@hotel_id}/hotel-offers", params)
39
- end
40
- end
41
- end
42
- end
43
- end
44
- end
@@ -1,51 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Amadeus
4
- module Namespaces
5
- class Shopping
6
- class Hotel
7
- # A namespaced client for the
8
- # +/v1/shopping/hotels/:id/offers+ endpoints
9
- #
10
- # Access via the +Amadeus::Client+ object
11
- #
12
- # amadeus = Amadeus::Client.new
13
- # amadeus.shopping.hotels.offers
14
- #
15
- class Offer < Amadeus::Client::Decorator
16
- # the Hotel ID
17
- attr_reader :hotel_id
18
- # the Offer ID
19
- attr_reader :offer_id
20
-
21
- # Initialize this namespaced client with an
22
- # {Amadeus::Client} instance, a Hotel ID, and an Offer ID
23
- #
24
- # @param [Amadeus::Client] client
25
- # @param [Number] hotel_id
26
- # @param [Number] offer_id
27
- #
28
- def initialize(client, hotel_id, offer_id)
29
- super(client)
30
- @hotel_id = hotel_id
31
- @offer_id = offer_id
32
- end
33
-
34
- # Get room and rate details
35
- #
36
- # @return [Amadeus::Response] a parsed response
37
- # @raise [Amadeus::Base] an exception if the call failed
38
- # @example Search for hotels in London
39
- # amadeus.shopping.hotel('SMPARCOL')
40
- # .offers('AC7D4DA2C322A73AF0824318A4965DA2805A3FC2').get
41
- #
42
- def get(params = {})
43
- client.get(
44
- "/v1/shopping/hotels/#{@hotel_id}/offers/#{@offer_id}", params
45
- )
46
- end
47
- end
48
- end
49
- end
50
- end
51
- end