torg_mailru_api 0.0.5 → 0.0.6
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.
- data/lib/torg_mailru_api.rb +219 -210
- data/lib/torg_mailru_api/version.rb +1 -1
- data/torg_mailru_api.gemspec +2 -0
- metadata +33 -1
data/lib/torg_mailru_api.rb
CHANGED
@@ -45,7 +45,6 @@ module TorgMailruApi
|
|
45
45
|
|
46
46
|
module APIRequest
|
47
47
|
|
48
|
-
|
49
48
|
class DeepOpenStruct < OpenStruct
|
50
49
|
|
51
50
|
def to_h
|
@@ -89,6 +88,7 @@ module TorgMailruApi
|
|
89
88
|
end
|
90
89
|
end
|
91
90
|
|
91
|
+
# Рекурсивная декамелизация ключей хеша
|
92
92
|
def decamelize_hash_keys value
|
93
93
|
case value
|
94
94
|
when Array
|
@@ -102,12 +102,24 @@ module TorgMailruApi
|
|
102
102
|
end
|
103
103
|
end
|
104
104
|
|
105
|
+
# Запрос к API
|
106
|
+
# @param [String] resource Ресурс API, к которому осуществляется запрос
|
107
|
+
# @param [Hash] params Хеш параметров
|
108
|
+
# @return [DeepOpenStruct] Результат запроса
|
105
109
|
def get resource, params=nil
|
106
110
|
response = super
|
107
111
|
hash = decamelize_hash_keys response[response.keys.first]
|
108
112
|
DeepOpenStruct.load hash
|
109
113
|
end
|
110
114
|
|
115
|
+
# Вспомогательная функция для преобразования ответа API в листинг
|
116
|
+
# @param [String] resource Ресурс API, к которому осуществляется запрос
|
117
|
+
# @param [Hash] params Хеш параметров
|
118
|
+
# @return [Listing] Листинг
|
119
|
+
def listing resource, params=nil
|
120
|
+
Listing.new resource, params
|
121
|
+
end
|
122
|
+
|
111
123
|
end
|
112
124
|
|
113
125
|
class Listing
|
@@ -142,313 +154,310 @@ module TorgMailruApi
|
|
142
154
|
end
|
143
155
|
|
144
156
|
module APIMethods
|
145
|
-
def listing resource, params=nil
|
146
|
-
Listing.new resource, params
|
147
|
-
end
|
148
|
-
|
149
|
-
### Товарные категории
|
150
157
|
|
151
|
-
|
152
|
-
#
|
153
|
-
#
|
154
|
-
#
|
155
|
-
#
|
156
|
-
#
|
157
|
-
#
|
158
|
-
#
|
158
|
+
# @!macro api_method
|
159
|
+
# @param [Hash] params Хеш параметров
|
160
|
+
# @!macro geodependent
|
161
|
+
# @note Ресурс является геозависимым.
|
162
|
+
# @option params [Integer] :geo_id Идентификатор региона (обязательно!)
|
163
|
+
# @!macro returns_listing
|
164
|
+
# @note Ресурс в ответе возвращает листинг.
|
165
|
+
# @return [Listing] Листинг
|
166
|
+
# @!macro returns_object
|
167
|
+
# @return [DeepOpenStruct] Объект
|
168
|
+
# @!macro paginated
|
169
|
+
# @option params [Integer] :page (1) Номер страницы
|
170
|
+
# @option params [Integer] :results_per_page (10) Количество результатов на страницу (max: 30)
|
171
|
+
# @!macro default_sort_order
|
172
|
+
# @option params [Symbol] :sort_order (:desc) Направление сортировки (:asc — по возрастанию; :desc — по убыванию)
|
173
|
+
# @!macro user_location
|
174
|
+
# @option params [Float] :latitude Широта точки нахождения пользователя
|
175
|
+
# @option params [Float] :longitude Долгота точки нахождения пользователя
|
176
|
+
# @!macro category_id
|
177
|
+
# @param [Integer] category_id Идентификатор товарной категории
|
178
|
+
# @!macro model_id
|
179
|
+
# @param [Integer] model_id Идентификатор модели
|
180
|
+
# @!macro offer_id
|
181
|
+
# @param [Integer] offer_id Идентификатор товарного предложения
|
182
|
+
# @!macro seller_id
|
183
|
+
# @param [Integer] seller_id Идентификатор магазина
|
184
|
+
# @!macro region_id
|
185
|
+
# @param [Integer] region_id Идентификатор региона
|
186
|
+
# @!macro vendor_id
|
187
|
+
# @param [Integer] vendor_id Идентификатор производителя
|
188
|
+
|
189
|
+
# @!group Товарные категории
|
190
|
+
|
191
|
+
# Список категорий: получение списка товарных категорий верхнего уровня.
|
192
|
+
# @macro api_method
|
193
|
+
# @macro geodependent
|
194
|
+
# @macro paginated
|
195
|
+
# @macro returns_listing
|
159
196
|
def categories params
|
160
197
|
listing "category", params
|
161
198
|
end
|
162
199
|
|
163
|
-
|
164
|
-
|
165
|
-
#
|
166
|
-
#
|
167
|
-
#
|
168
|
-
#
|
169
|
-
#
|
170
|
-
#
|
171
|
-
# page Число Номер страницы. 1 Нет
|
172
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. выводятся все результаты Нет
|
200
|
+
# Список подкатегорий: получение списка подкатегорий для товарной категории.
|
201
|
+
# @macro api_method
|
202
|
+
# @macro geodependent
|
203
|
+
# @macro category_id
|
204
|
+
# @option params [Symbol] :type (:all) Фильтрация выходных данных по типу товарной категории (:all | :model | :parameterized | :general)
|
205
|
+
# @option params [Integer] :page (1) Номер страницы
|
206
|
+
# @option params [Integer] :results_per_page (выводятся все результаты) Количество результатов на страницу (max: 30)
|
207
|
+
# @macro returns_listing
|
173
208
|
def category_children category_id, params
|
174
209
|
listing "category/#{category_id}/children", params
|
175
210
|
end
|
176
211
|
|
177
|
-
|
178
|
-
#
|
179
|
-
#
|
180
|
-
#
|
181
|
-
#
|
182
|
-
# geo_id Число Идентификатор региона. Да
|
212
|
+
# Информация о категории: получение информации о товарной категории.
|
213
|
+
# @macro api_method
|
214
|
+
# @macro geodependent
|
215
|
+
# @macro category_id
|
216
|
+
# @macro returns_object
|
183
217
|
def category category_id, params
|
184
218
|
get "category/#{category_id}", params
|
185
219
|
end
|
186
220
|
|
187
|
-
|
188
|
-
#
|
189
|
-
#
|
190
|
-
#
|
191
|
-
#
|
221
|
+
# Список параметров категории: получение списка параметров товарной категории.
|
222
|
+
# @macro api_method
|
223
|
+
# @macro category_id
|
224
|
+
# @option params [Symbol] :parameter_set (:popular) Тип набора параметров категории (:popular — популярные; :all — все)
|
225
|
+
# @macro returns_object
|
192
226
|
def category_parameters category_id, params=nil
|
193
227
|
get "category/#{category_id}/parameters", params
|
194
228
|
end
|
195
229
|
|
196
|
-
|
197
|
-
#
|
198
|
-
#
|
199
|
-
#
|
200
|
-
#
|
201
|
-
#
|
202
|
-
#
|
203
|
-
#
|
204
|
-
#
|
205
|
-
# page Число Номер страницы. 1 Нет
|
206
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
230
|
+
# Список моделей категории: получение списка моделей в модельной товарной категории.
|
231
|
+
# @note Для обычных категорий ресурс возвращает ошибку.
|
232
|
+
# @macro api_method
|
233
|
+
# @macro geodependent
|
234
|
+
# @macro category_id
|
235
|
+
# @option params [Integer] :vendor_id Идентификатор производителя
|
236
|
+
# @option params [Symbol] :sort (:popular) Тип сортировки моделей (:date — сортировка по новизне; :popular — сортировка по популярности; :price — сортировка по цене)
|
237
|
+
# @macro default_sort_order
|
238
|
+
# @macro returns_listing
|
207
239
|
def category_models category_id, params
|
208
240
|
listing "category/#{category_id}/models", params
|
209
241
|
end
|
210
242
|
|
211
|
-
|
212
|
-
#
|
213
|
-
#
|
214
|
-
#
|
215
|
-
#
|
216
|
-
#
|
217
|
-
#
|
218
|
-
#
|
219
|
-
#
|
220
|
-
# page Число Номер страницы. 1 Нет
|
221
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
243
|
+
# Список товарных предложений категории: получение списка товарных предложений в обычной товарной категории.
|
244
|
+
# @note Для модельных и параметризированных категорий ресурс возвращает ошибку.
|
245
|
+
# @macro api_method
|
246
|
+
# @macro category_id
|
247
|
+
# @macro geodependent
|
248
|
+
# @option params [Symbol] :sort (:auction) Тип сортировки предложений (:auction — по убыванию ставки; :price — сортировка по цене)
|
249
|
+
# @macro default_sort_order
|
250
|
+
# @macro paginated
|
251
|
+
# @macro returns_listing
|
222
252
|
def category_offers category_id, params
|
223
253
|
listing "category/#{category_id}/offers", params
|
224
254
|
end
|
225
255
|
|
226
|
-
|
227
|
-
#
|
228
|
-
#
|
229
|
-
#
|
230
|
-
#
|
231
|
-
#
|
232
|
-
#
|
256
|
+
# Список хитов продаж категории: получение списка 50 моделей-хитов продаж модельной товарной категории.
|
257
|
+
# @note Список отсортирован по степени убывания популярности у покупателей.
|
258
|
+
# @note Для обычных категорий ресурс возвращает ошибку.
|
259
|
+
# @macro api_method
|
260
|
+
# @macro category_id
|
261
|
+
# @macro geodependent
|
262
|
+
# @macro returns_object
|
233
263
|
def category_hits category_id, params
|
234
|
-
|
235
|
-
end
|
236
|
-
|
237
|
-
# Список новинок
|
238
|
-
#
|
239
|
-
#
|
240
|
-
#
|
241
|
-
#
|
242
|
-
#
|
243
|
-
#
|
244
|
-
#
|
245
|
-
#
|
246
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
264
|
+
get "category/#{category_id}/hits", params
|
265
|
+
end
|
266
|
+
|
267
|
+
# Список новинок категории: получение списка моделей в модельной товарной категории.
|
268
|
+
# @note Для обычных категорий ресурс возвращает ошибку.
|
269
|
+
# @macro api_method
|
270
|
+
# @macro category_id
|
271
|
+
# @macro geodependent
|
272
|
+
# @option params [Symbol] :sort (:popular) Тип сортировки моделей (:popular — сортировка по популярности; :price — сортировка по цене)
|
273
|
+
# @macro default_sort_order
|
274
|
+
# @macro paginated
|
275
|
+
# @macro returns_listing
|
247
276
|
def category_newmodels category_id, params
|
248
277
|
listing "category/#{category_id}/newmodels", params
|
249
278
|
end
|
250
279
|
|
280
|
+
# @!group Модели товаров
|
251
281
|
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
#
|
256
|
-
#
|
257
|
-
# Входные параметры:
|
258
|
-
# Параметр / Тип / Описание / Значение по умолчанию / Обязательный
|
259
|
-
# geo_id Число Идентификатор региона Да
|
282
|
+
# Информация о модели: получение информации об указанной модели.
|
283
|
+
# @macro api_method
|
284
|
+
# @macro model_id
|
285
|
+
# @macro geodependent
|
286
|
+
# @macro returns_object
|
260
287
|
def model model_id, params
|
261
288
|
get "model/#{model_id}", params
|
262
289
|
end
|
263
290
|
|
264
|
-
|
265
|
-
#
|
266
|
-
#
|
267
|
-
#
|
268
|
-
#
|
291
|
+
# Список характеристик модели: получение списка характеристик указанной модели.
|
292
|
+
# @macro api_method
|
293
|
+
# @macro model_id
|
294
|
+
# @option params :parameter_set [Symbol] (:popular) Тип набора параметров категории (:popular — популярные, :all — все)
|
295
|
+
# @macro returns_object
|
269
296
|
def model_parameters model_id, params=nil
|
270
297
|
get "model/#{model_id}/parameters", params
|
271
298
|
end
|
272
299
|
|
273
|
-
# Список предложений
|
274
|
-
#
|
275
|
-
#
|
276
|
-
#
|
277
|
-
#
|
278
|
-
#
|
279
|
-
# sort
|
280
|
-
#
|
281
|
-
#
|
282
|
-
#
|
283
|
-
#
|
284
|
-
#
|
285
|
-
#
|
286
|
-
#
|
287
|
-
# если у параметра sort_order указано значение price, сортировка по возрастанию;
|
288
|
-
# если у параметра sort_order указано значение rating, сортировка по убыванию;
|
289
|
-
# если у параметра sort_order указано значение range, сортировка по возрастанию.
|
290
|
-
# Нет
|
291
|
-
# page Число Номер страницы. 1 Нет
|
292
|
-
# results_per_page Число Количество результатов на страницу.
|
293
|
-
# Максимальное значение: 30. 10 Нет
|
294
|
-
# latitude Число Широта точки нахождения пользователя. Нет
|
295
|
-
# longitude Число Долгота точки нахождения пользователя. Нет
|
300
|
+
# Список предложений модели: получение списка товарных предложений указанной модели.
|
301
|
+
# @macro api_method
|
302
|
+
# @macro model_id
|
303
|
+
# @macro geodependent
|
304
|
+
# @option params [Symbol] :sort (:auction) Тип сортировки предложений (:auction — по убыванию ставки; :price — по цене,
|
305
|
+
# :rating — по рейтингу магазина + цене, :range — по расстоянию до ближайшей точки продаж (при указании местоположения пользователя)).
|
306
|
+
# * Если у параметра :sort указано значение :price, сортировка по возрастанию;
|
307
|
+
# * если у параметра :sort указано значение :rating, сортировка по убыванию;
|
308
|
+
# * если у параметра :sort указано значение :range, сортировка по возрастанию.
|
309
|
+
# @option params [Symbol] :sort_order (:desc) Направление сортировки (:asc — по возрастанию; :desc — по убыванию).
|
310
|
+
# Задается только в том случае, если у параметра :sort указано значение :price
|
311
|
+
# @macro paginated
|
312
|
+
# @macro user_location
|
313
|
+
# @macro returns_listing
|
296
314
|
def model_offers model_id, params
|
297
315
|
listing "model/#{model_id}/offers", params
|
298
316
|
end
|
299
317
|
|
300
|
-
|
301
|
-
#
|
302
|
-
#
|
303
|
-
#
|
304
|
-
#
|
305
|
-
#
|
306
|
-
#
|
307
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
308
|
-
# latitude Число Широта точки нахождения пользователя. Нет
|
309
|
-
# longitude Число Долгота точки нахождения пользователя. Нет
|
318
|
+
# Список точек продаж модели: получение списка точек продаж указанной модели.
|
319
|
+
# @macro api_method
|
320
|
+
# @macro model_id
|
321
|
+
# @macro geodependent
|
322
|
+
# @macro paginated
|
323
|
+
# @macro user_location
|
324
|
+
# @macro returns_listing
|
310
325
|
def model_outlets model_id, params
|
311
326
|
listing "model/#{model_id}/outlets", params
|
312
327
|
end
|
313
328
|
|
314
|
-
|
329
|
+
# @!group Товарные предложения
|
315
330
|
|
316
|
-
|
317
|
-
#
|
331
|
+
# Информация о товарном предложении: получение расширенной информации об указанном товарном предложении магазина.
|
332
|
+
# @macro api_method
|
333
|
+
# @macro offer_id
|
334
|
+
# @macro returns_object
|
318
335
|
def offer offer_id, params=nil
|
319
336
|
get "offer/#{offer_id}", params
|
320
337
|
end
|
321
338
|
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
#
|
326
|
-
#
|
327
|
-
#
|
328
|
-
#
|
329
|
-
#
|
330
|
-
#
|
331
|
-
#
|
332
|
-
#
|
333
|
-
#
|
334
|
-
#
|
335
|
-
# page Число Номер страницы. 1 Нет
|
336
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
339
|
+
# @!group Поиск
|
340
|
+
|
341
|
+
# Полнотекстовый поиск: получение списка моделей и товарных предложений, удовлетворяющих строке запроса.
|
342
|
+
# @macro api_method
|
343
|
+
# @macro geodependent
|
344
|
+
# @option params [String] :query Поисковый запрос (обязательно!)
|
345
|
+
# @option params [Integer] :category_id Фильтрация результатов поиска по товарной категории
|
346
|
+
# @option params [Integer] :seller_id Фильтрация результатов поиска по магазину
|
347
|
+
# @option params [Integer] :price_min Фильтрация результатов поиска по минимальной цене товарных предложений
|
348
|
+
# @option params [Integer] :price_max Фильтрация результатов поиска по максимальной цене товарных предложений
|
349
|
+
# @option params [Symbol] :sort (:relevance) Тип сортировки результатов поиска (:price — сортировка по возрастанию цены, :relevance — по релевантности)
|
350
|
+
# @macro paginated
|
351
|
+
# @macro returns_listing
|
337
352
|
def search params
|
338
353
|
listing "search", params
|
339
354
|
end
|
340
355
|
|
341
|
-
|
342
|
-
#
|
343
|
-
#
|
344
|
-
# Параметр
|
345
|
-
#
|
346
|
-
#
|
347
|
-
#
|
348
|
-
#
|
349
|
-
# тип параметра
|
350
|
-
#
|
351
|
-
#
|
352
|
-
#
|
353
|
-
#
|
354
|
-
# page Число Номер страницы. 1 Нет
|
355
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
356
|
+
# Параметрический поиск: получение списка моделей категории, удовлетворяющих набору заданных параметров.
|
357
|
+
# @macro api_method
|
358
|
+
# @macro geodependent
|
359
|
+
# @option params [String] <parameter_id> Параметр товарной категории. В запросе вместо <parameter_id> указыватся id параметра.
|
360
|
+
# Список параметров и их id для определенной товарной категории можно получить с помощью ресурса "Список параметров категории".
|
361
|
+
# Значение зависит от типа выбранного параметра категории:
|
362
|
+
# * тип параметра numeric — числовое значение <value> или числовой диапазон, значения границ которого разделяются запятой "<min_value>,<max_value>";
|
363
|
+
# * тип параметра enum — список идентификаторов допустимых значений параметра, разделенный запятыми, "<value1_id>,<value2_id>,<value3_id>", где <valueN_id> — идентификатор значения;
|
364
|
+
# * тип параметра bool — допустимые значения параметра: "true" и "false".
|
365
|
+
# @option params [Symbol] :sort (:popular) Тип сортировки результатов поиска (:date — по новизне; :popular — по популярности; :price — по цене)
|
366
|
+
# @macro default_sort_order
|
367
|
+
# @macro paginated
|
368
|
+
# @macro returns_listing
|
356
369
|
def category_filter category_id, params
|
357
370
|
listing "category/#{category_id}/filter", params
|
358
371
|
end
|
359
372
|
|
360
|
-
|
373
|
+
# @!group Отзывы
|
361
374
|
|
362
|
-
|
363
|
-
#
|
364
|
-
#
|
365
|
-
#
|
366
|
-
#
|
367
|
-
#
|
368
|
-
#
|
369
|
-
#
|
370
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 0 (выводятся все результаты) Нет
|
375
|
+
# Отзывы о магазине: получение списка отзывов о магазине.
|
376
|
+
# @macro api_method
|
377
|
+
# @option params [Symbol] :sort (:date) Тип сортировки отзывов (:mark — по оценке пользователя; :date — по дате добавления отзыва; :valuable — по оценке полезности отзыва)
|
378
|
+
# @macro default_sort_order
|
379
|
+
# @option params [Integer,Symbol] :mark (:all) Фильтрация отзывов по оценке магазина (1, 2, 3, 4, 5; :all — все значения)
|
380
|
+
# @option params [Integer] :page (1) Номер страницы
|
381
|
+
# @option params [Integer] :results_per_page (выводятся все результаты) Количество результатов на страницу (max: 30)
|
382
|
+
# @macro returns_listing
|
371
383
|
def seller_reviews seller_id, params
|
372
384
|
listing "seller/#{seller_id}/reviews", params
|
373
385
|
end
|
374
386
|
|
375
|
-
|
387
|
+
# @!group Магазины
|
376
388
|
|
377
|
-
|
378
|
-
#
|
389
|
+
# Информация о магазине: получение информации о выбранном магазине.
|
390
|
+
# @macro seller_id
|
391
|
+
# @macro returns_object
|
379
392
|
def seller seller_id
|
380
393
|
get "seller/#{seller_id}"
|
381
394
|
end
|
382
395
|
|
383
|
-
|
384
|
-
#
|
385
|
-
#
|
386
|
-
#
|
387
|
-
#
|
388
|
-
#
|
389
|
-
#
|
390
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
391
|
-
# latitude Число Широта точки нахождения пользователя. Нет
|
392
|
-
# longitude Число Долгота точки нахождения пользователя. Нет
|
396
|
+
# Список точек продаж магазина: получение списка точек продаж выбранного магазина.
|
397
|
+
# @macro api_method
|
398
|
+
# @macro seller_id
|
399
|
+
# @macro geodependent
|
400
|
+
# @macro paginated
|
401
|
+
# @macro user_location
|
402
|
+
# @macro returns_listing
|
393
403
|
def seller_outlets seller_id, params
|
394
404
|
listing "seller/#{seller_id}/outlets", params
|
395
405
|
end
|
396
406
|
|
397
|
-
|
407
|
+
# @!group Производители
|
398
408
|
|
399
|
-
|
400
|
-
#
|
401
|
-
#
|
402
|
-
#
|
403
|
-
#
|
404
|
-
|
405
|
-
# page Число Номер страницы. 1 Нет
|
406
|
-
# results_per_page Число Количество результатов на страницу.
|
407
|
-
# Максимальное значение: 30. 0 (выводятся все результаты) Нет
|
408
|
-
def vendors
|
409
|
+
# Список производителей: получение списка производителей, товары которых представлены в каталоге моделей на Товарах@Mail.Ru
|
410
|
+
# @option params [Integer] :category_id Идентификатор товарной категории, для которой нужно получить список производителей
|
411
|
+
# @option params [Integer] :page (1) Номер страницы
|
412
|
+
# @option params [Integer] :results_per_page (выводятся все результаты) Количество результатов на страницу (max: 30)
|
413
|
+
# @macro returns_listing
|
414
|
+
def vendors params=nil
|
409
415
|
listing "vendor"
|
410
416
|
end
|
411
417
|
|
412
|
-
|
413
|
-
#
|
414
|
-
|
418
|
+
# Информация о производителе: получение информации о производителе.
|
419
|
+
# @macro vendor_id
|
420
|
+
# @macro returns_object
|
421
|
+
def vendor vendor_id
|
415
422
|
get "vendor/#{vendor_id}"
|
416
423
|
end
|
417
424
|
|
418
|
-
|
425
|
+
# @!group Геоинформация
|
419
426
|
|
420
|
-
|
421
|
-
#
|
422
|
-
#
|
423
|
-
#
|
424
|
-
# Параметр / Тип / Описание / Значение по умолчанию / Обязательный
|
425
|
-
# page Число Номер страницы. 1 Нет
|
426
|
-
# results_per_page Число Количество результатов на страницу. Максимальное значение: 30. 10 Нет
|
427
|
+
# Список регионов: получение списка регионов верхнего уровня.
|
428
|
+
# @macro api_method
|
429
|
+
# @macro paginated
|
430
|
+
# @macro returns_listing
|
427
431
|
def regions params=nil
|
428
432
|
listing "regions", params
|
429
433
|
end
|
430
434
|
|
431
|
-
|
432
|
-
#
|
433
|
-
#
|
435
|
+
# Список дочерних регионов: получение списка дочерних регионов для выбранного региона.
|
436
|
+
# @macro api_method
|
437
|
+
# @macro region_id
|
438
|
+
# @macro paginated
|
439
|
+
# @macro returns_listing
|
434
440
|
def region_children region_id, params=nil
|
435
441
|
listing "region/#{region_id}/children", params
|
436
442
|
end
|
437
443
|
|
438
|
-
|
439
|
-
#
|
440
|
-
#
|
444
|
+
# Информация о регионе: получение информации о выбранном регионе.
|
445
|
+
# @macro region_id
|
446
|
+
# @macro returns_object
|
441
447
|
def region region_id
|
442
448
|
get "region/#{region_id}"
|
443
449
|
end
|
444
450
|
|
445
|
-
|
446
|
-
#
|
447
|
-
#
|
451
|
+
# Текстовый поиск региона: получение списка регионов, удовлетворяющих строке запроса.
|
452
|
+
# @option params [String] :query Полное или частичное название региона (обязательно!)
|
453
|
+
# @option params [Integer] :total (5) Количество результатов (max: 10)
|
454
|
+
# @macro returns_object
|
448
455
|
def region_suggest params
|
449
456
|
get "region/suggest", params
|
450
457
|
end
|
451
458
|
|
459
|
+
# @!endgroup
|
460
|
+
|
452
461
|
end
|
453
462
|
|
454
463
|
extend Configuration
|
data/torg_mailru_api.gemspec
CHANGED
@@ -20,6 +20,8 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.3"
|
22
22
|
spec.add_development_dependency "rake"
|
23
|
+
spec.add_development_dependency "yard"
|
24
|
+
spec.add_development_dependency "redcarpet"
|
23
25
|
|
24
26
|
spec.add_runtime_dependency 'faraday', '~> 0.8.8'
|
25
27
|
spec.add_runtime_dependency 'faraday_middleware', '~> 0.9.0'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: torg_mailru_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -43,6 +43,38 @@ dependencies:
|
|
43
43
|
- - ! '>='
|
44
44
|
- !ruby/object:Gem::Version
|
45
45
|
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: yard
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: redcarpet
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
46
78
|
- !ruby/object:Gem::Dependency
|
47
79
|
name: faraday
|
48
80
|
requirement: !ruby/object:Gem::Requirement
|