rail-locator-api 0.0.33 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5ede41528479ea31925099520174f0ed0a80a2606b8765f8b807accb044fd962
4
- data.tar.gz: ebc0acc5dbee2508dff3a999e0c8207c7597d2d32dd40a59ed6ff799504b1e69
3
+ metadata.gz: 86dafa172f5244cd21ea40704c850a5f585514ba5b00437da05bca58d420cbe5
4
+ data.tar.gz: 439dc8ac49e8998c577981a319e1939600831304ce60bfcd2f10179af2d28c51
5
5
  SHA512:
6
- metadata.gz: c81a85c81904a43f9c65a89939c961ab0c89aa3b63e577be00bddcdcff611421b84d4f2cd547503f543eca3df65fd5dcc1e1942be0731d0dd210a069f00bc2ba
7
- data.tar.gz: 14759e3c5a4eb9a77582156b111ec7979751c564ff375f176ce6aaea8ad09657ead00a520215966bcb468feaeb38bd8f3abc550d8c74a73ee8987490174508f9
6
+ metadata.gz: 074b9f3ad0f4561006e01a58bc9a7f83c2b792f3c715adc85f25317d080a9cdada8e3c95f2ba1d28c267a511f93dfac118894af414ae51ded59ffae582592b9c
7
+ data.tar.gz: 1393c5d85d5bc21600d50e618a2c0ef1e87763e68d5a77c936e87911f139f172d439951d024345d927f1569a3086bb4916e96a60821ece19885e6aba04811d24
data/README.markdown CHANGED
@@ -9,27 +9,60 @@ API wrapper для RailLocator API v2
9
9
  3. [Debug Logging](#debug_logging)
10
10
  4. [Custom logger](#custom_logger)
11
11
  1. [Треки](#tracks)
12
- 1. [Получение трека](#get-track-dislocation)
13
- 2. [Получение несклько треков](#get-tracks-dislocation)
14
- 3. [Постановка на слежение](#post-tracks)
15
- 4. [Снятие со слежения](#delete-tracks)
16
- 5. [Получение списка треков](#get-track-history)
17
-
12
+ 1. [Получение Списка Треков](#tracks_dislocation_get)
13
+ 2. [Постановка На Слежение](#tracks_dislocation_post)
14
+ 3. [Получение Дислокации По Нескольким Трекам](#tracks_dislocation_batch_get)
15
+ 4. [Получение Информации О Маршруте](#tracks_dislocation_route_info_get)
16
+ 5. [Получение Дислокации По Одному Треку](#tracks_dislocation__track_id__get)
17
+ 2. [Справки](#inquiries)
18
+ 1. [Получение Справок](#tracks_inquiries_get)
19
+ 2. [Постановка На Слежение](#tracks_inquiries_get)
20
+ 3. [Получение Справки](#tracks_inquiries__track_id__get)
21
+ 3. [Подходы](#approaches)
22
+ 1. [Постановка На Слежение](#tracks_approaches_post)
23
+ 4. [Тех. паспорт вагона](#tech_passport)
24
+ 1. [Получение Тех. Паспортов](#tracks_tech_passport_batch_get)
25
+ 2. [Получение Тех. Паспорта](#tracks_tech_passport__track_id__get)
26
+ 5. [Контроль тех. состояния](#tech_condition)
27
+ 1. [Получение Тех. Состояния](#tracks_tech_condition_get)
28
+ 2. [Постановка На Слежение](#tracks_tech_condition_post)
29
+ 6. [Изменение/Снятие треков](#update_delete_tracks)
30
+ 1. [Снятие Со Слежения Нескольких Треков](#tracks_batch_delete)
31
+ 2. [Изменение Информации О Нескольких Треках](#tracks_batch_patch)
32
+ 3. [Снятие Со Слежения Одного Трека](#tracks__track_id__delete)
33
+ 4. [Изменение Информации О Треке](#tracks__track_id__patch)
34
+ 7. [Группы](#groups)
35
+ 1. [Получение Списка Групп](#groups_get)
36
+ 2. [Создание Группы](#groups_post)
37
+ 3. [Удаление Группы](#groups__group_id__delete)
38
+ 4. [Изменение Группы](#groups__group_id__patch)
39
+ 5. [Добавление Вагона В Группу](#groups__group_id__cargo_transport_unit_number_batch_put)
40
+ 6. [Удаление Вагонов Из Группы](#groups__group_id__cargo_transport_unit_number_batch_delete)
41
+ 7. [Добавление Вагона В Группу](#groups__group_id__cargo_transport_unit_number__cargo_transport_unit_number__put)
42
+ 8. [Удаление Вагона Из Группы](#groups__group_id__cargo_transport_unit_number__cargo_transport_unit_number__delete)
43
+ 8. [Справочники](#references)
44
+ 1. [Получение Координат Станции](#references_station_get)
45
+ 2. [Получение Списка Станций С Краткой Информацией](#references_stations_get)
46
+
18
47
  # <a name="install"></a> Установка
19
48
 
49
+ Для авторизации по api key необходимо получить его [в личном кабинете локатора](https://rail-locator.com/app/api-keys)
50
+ либо использовать другие методы авторизации:
51
+
52
+ `:keycloak, :api_key, :base64`
53
+
20
54
  ## Ruby
21
55
  $ gem install rail-locator-api
22
56
  ## Rails
23
57
  добавьте в Gemfile:
24
- gem 'rail-locator-api', git: 'https://gitlab.ctm.ru/locator/rail-locator-ruby-api-wrapper'
58
+
59
+ gem 'rail-locator-api'
25
60
 
26
61
  и запустите `bundle install`.
27
62
 
28
63
  Затем:
29
- rails g rail_locator_api:install
30
- ## Требования
31
64
 
32
- Необходимо получить api key https://rail-locator.com/app/api-keys
65
+ rails g rail_locator_api:install
33
66
 
34
67
  ## <a name="using_rails"></a> Использование Rails
35
68
 
@@ -40,21 +73,24 @@ API wrapper для RailLocator API v2
40
73
  Сначала создайте экземпляр объекта `RailLocatorApi::Request`:
41
74
 
42
75
  ```ruby
43
- locator = RailLocatorApi::Request.new(api_key: "your_api_key", api_auth_method: :api_key)
44
- или
45
- locator = RailLocatorApi::Request.new(api_user_email: "email@ctm.ru", api_user_password: "12345678")
76
+ locator = RailLocatorApi::Request.new(api_key: "***")
77
+ # или
78
+ locator = RailLocatorApi::Request.new(api_auth_method: :base64, api_user_email: "email@ctm.ru", api_user_password: "12345678")
46
79
  ```
47
80
 
48
- Вы можете изменять `api_key`, `api_user_email`, `api_user_password`, `timeout`, `open_timeout`, `faraday_adapter`, `proxy`, `symbolize_keys`, `logger`, и `debug`:
81
+ Вы можете изменять `api_auth_method`, `api_key`, `api_user_email`, `api_user_password`, `timeout`, `open_timeout`, `faraday_adapter`, `proxy`, `symbolize_keys`, `logger`, и `debug`:
49
82
 
50
83
  ```ruby
51
- RailLocatorApi::Request.api_key = "your_api_key"
52
- RailLocatorApi::Request.api_user_email = "email@ctm.ru"
53
- RailLocatorApi::Request.api_user_password = "12345678"
54
84
  RailLocatorApi::Request.timeout = 15
55
85
  RailLocatorApi::Request.open_timeout = 15
56
86
  RailLocatorApi::Request.symbolize_keys = true
57
87
  RailLocatorApi::Request.debug = false
88
+
89
+ RailLocatorApi::Request.api_key = "your_api_key"
90
+ # или
91
+ RailLocatorApi::Request.api_auth_method = :base64
92
+ RailLocatorApi::Request.api_user_email = "email@ctm.ru"
93
+ RailLocatorApi::Request.api_user_password = "12345678"
58
94
  ```
59
95
 
60
96
  Либо в файле `config/initializers/rail_locator_api.rb` для Rails.
@@ -64,7 +100,7 @@ RailLocatorApi::Request.debug = false
64
100
  Измените `debug: true` чтобы включить логирование в STDOUT.
65
101
 
66
102
  ```ruby
67
- locator = RailLocatorApi::Request.new(api_key: "your_api_key", debug: true)
103
+ locator = RailLocatorApi::Request.new(api_key: "***", debug: true)
68
104
  ```
69
105
 
70
106
  ### <a name="custom_logger"></a> Custom logger
@@ -72,7 +108,7 @@ locator = RailLocatorApi::Request.new(api_key: "your_api_key", debug: true)
72
108
  `Logger.new` используется по умолчанию, но вы можете изменить на свой:
73
109
 
74
110
  ```ruby
75
- locator = RailLocatorApi::Request.new(api_key: "your_api_key", debug: true, logger: MyLogger.new)
111
+ locator = RailLocatorApi::Request.new(api_key: "***", debug: true, logger: MyLogger.new)
76
112
  ```
77
113
 
78
114
  Или:
@@ -82,65 +118,385 @@ RailLocatorApi::Request.logger = MyLogger.new
82
118
  ```
83
119
 
84
120
  # <a name="examples"></a> Примеры
85
- ## <a name="tracks"></a> Треки
86
- ### <a name="get-track-dislocation"></a> [Получение трека](http://soap.ctm.ru:8112/api/v2.0/redoc#operation/__________________________________________tracks_dislocation_data_get)
121
+ ## <a name="tracks"></a> Дислокация
122
+ ### <a name="tracks_dislocation_get"></a> [Получение Списка Треков](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Dislokaciya/operation/________________________tracks_dislocation_get)
123
+ ```ruby
124
+ request = {
125
+ "limit": 100,
126
+ "offset": 0,
127
+ "filters": [
128
+ {
129
+ "field": "is_broken",
130
+ "operand": "in",
131
+ "value": [
132
+ null,
133
+ true
134
+ ]
135
+ },
136
+ {
137
+ "field": "track_create_time",
138
+ "operand": ">=",
139
+ "value": "2010-10-10 00:00"
140
+ },
141
+ {
142
+ "field": "track_stop_time",
143
+ "operand": "between",
144
+ "value": [
145
+ "2010-10-10 00:00",
146
+ "2021-10-10 00:00"
147
+ ]
148
+ }
149
+ ],
150
+ "sort": [
151
+ {
152
+ "field": "is_active",
153
+ "order": "asc"
154
+ }
155
+ ],
156
+ "fulltext_filter": {
157
+ "value": "2010",
158
+ "fields": [
159
+ "track_create_time",
160
+ "track_stop_time"
161
+ ],
162
+ "operation": "include"
163
+ }
164
+ }
165
+ response = RailLocatorApi::Request.tracks.dislocation.retrieve(body: request)
166
+ p response.body
167
+ ```
168
+
169
+ ### <a name="tracks_dislocation_post"></a> [Постановка На Слежение](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Dislokaciya/operation/_______________________tracks_dislocation_post)
170
+
171
+ ```ruby
172
+ request = [
173
+ {
174
+ "is_validate_vehicle": true,
175
+ "cargo_transport_unit_number": "ASVD123",
176
+ "country_code": "01",
177
+ "tracking_type": 1,
178
+ "is_cross_country_tracking": true
179
+ }
180
+ ]
181
+ response = RailLocatorApi::Request.tracks.dislocation.create(body: request)
182
+ p response.body
183
+ ```
184
+
185
+ ### <a name="tracks_dislocation_batch_get"></a> [Получение Дислокации По Нескольким Трекам](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Dislokaciya/operation/__________________________________________tracks_dislocation_batch_get)
186
+
187
+ ```ruby
188
+ request = {
189
+ "track_ids": [
190
+ 0
191
+ ],
192
+ "operations_count": 10
193
+ }
194
+ response = RailLocatorApi::Request.tracks.dislocation.history.retrieve(body: request)
195
+ p response.body
196
+ ```
197
+
198
+ ### <a name="tracks_dislocation_route_info_get"></a> [Получение Информации О Маршруте](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Dislokaciya/operation/________________________________tracks_dislocation_route_info_get)
199
+
87
200
  ```ruby
88
201
  track_id = 1
89
- #КАК ВЫГЛЯДИТ СЕЙЧАС
90
- RailLocatorApi::Request.tracks.dislocation(track_id).data.retrieve.body
91
- #КАК ЭТО ДОЛЖНО ВЫГЛЯДЕТЬ
92
- RailLocatorApi::Request.tracks(track_id).retrieve.body
202
+ response = RailLocatorApi::Request.tracks.dislocation(track_id).route.retrieve
203
+ p response.body
93
204
  ```
94
- ### <a name="get-track-dislocation"></a> [Получение треков](http://soap.ctm.ru:8112/api/v2.0/redoc#operation/__________________________________________tracks_dislocation_data_get)
205
+
206
+ ### <a name="tracks_dislocation__track_id__get"></a> [Получение Дислокации По Одному Треку](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Dislokaciya/operation/_____________________________________tracks_dislocation__track_id__get)
207
+
95
208
  ```ruby
96
- params = {
97
- track_ids: [1,2,3],
98
- operations_count: 100
209
+ track_id = 1
210
+ response = RailLocatorApi::Request.tracks.dislocation(track_id).history.retrieve
211
+ p response.body
212
+ ```
213
+
214
+ ## <a name="inquiries"></a> Справки
215
+
216
+ ### <a name="tracks_inquiries_get"></a> [Получение Справок](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Spravki/operation/__________________tracks_inquiries_get)
217
+ ```ruby
218
+ request = {
219
+ "limit": 100,
220
+ "offset": 0,
221
+ "filters": [
222
+ {
223
+ "field": "is_broken",
224
+ "operand": "in",
225
+ "value": [
226
+ null,
227
+ true
228
+ ]
229
+ },
230
+ {
231
+ "field": "track_start",
232
+ "operand": ">=",
233
+ "value": "2010-10-10 00:00"
234
+ },
235
+ {
236
+ "field": "track_stop",
237
+ "operand": "between",
238
+ "value": [
239
+ "2010-10-10 00:00",
240
+ "2021-10-10 00:00"
241
+ ]
242
+ }
243
+ ],
244
+ "sort": [
245
+ {
246
+ "field": "is_active",
247
+ "order": "asc"
248
+ }
249
+ ],
250
+ "fulltext_filter": {
251
+ "value": "2010",
252
+ "fields": [
253
+ "track_start",
254
+ "track_stop"
255
+ ],
256
+ "operation": "include"
257
+ }
99
258
  }
100
- #КАК ВЫГЛЯДИТ СЕЙЧАС
101
- RailLocatorApi::Request.tracks.dislocation.data.retrieve(body: params).body
102
- #КАК ЭТО ДОЛЖНО ВЫГЛЯДЕТЬ
103
- RailLocatorApi::Request.tracks.retrieve(params: params).body
104
- ```
105
- ### <a name="post-tracks"></a> [Постановка на слежение](http://soap.ctm.ru:8112/api/v2.0/redoc#operation/_______________________tracks_post)
106
- ```ruby
107
- body = [
108
- {
109
- is_validate_vehicle: true,
110
- cargo_transport_unit_number: "Test",
111
- tracking_type: 0,
112
- country_code: "RU",
113
- is_cross_country_tracking: true
114
- }
259
+ response = RailLocatorApi::Request.tracks.inquiries.retrieve(body: request)
260
+ p response.body
261
+ ```
262
+
263
+ ### <a name="tracks_inquiries_post"></a> [Постановка На Слежение](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Spravki/operation/_______________________tracks_inquiries_post)
264
+ ```ruby
265
+ request = [
266
+ {
267
+ "inquiry_type": "2612",
268
+ "cargo_transport_unit_number": "12345678"
269
+ }
115
270
  ]
116
- RailLocatorApi::Request.tracks.create(body: body).body
271
+ response = RailLocatorApi::Request.tracks.inquiries.create(body: request)
272
+ p response.body
117
273
  ```
118
- ### <a name="delete-tracks"></a> [Снятие со слежения](http://soap.ctm.ru:8112/api/v2.0/redoc#operation/___________________tracks_delete)
274
+
275
+ ### <a name="tracks_inquiries__track_id__get"></a> [Получение Справки](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Spravki/operation/__________________tracks_inquiries__track_id__get)
119
276
  ```ruby
120
- body = {
121
- track_ids: [
122
- 123,
123
- 1234
124
- ]
277
+ track_id = 1
278
+ response = RailLocatorApi::Request.tracks.inquiries(track_id).retrieve
279
+ p response.body
280
+ ```
281
+
282
+ ## <a name="approaches"></a> Подходы
283
+ ### <a name="tracks_approaches_post"></a> [Постановка На Слежение](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Podhody/operation/_______________________tracks_approaches_post)
284
+ ```ruby
285
+ request = [
286
+ {
287
+ "cargo_transport_unit_type": 0,
288
+ "stop_tracking_condition": 0,
289
+ "cargo_transport_unit_load_state": 0,
290
+ "cargo_code": "string",
291
+ "tracking_type": 0,
292
+ "destination_station": "string",
293
+ "which_okpo_to_use": 0,
294
+ "cargo_sender_okpo": "string",
295
+ "cargo_receiver_okpo": "string"
296
+ }
297
+ ]
298
+ response = RailLocatorApi::Request.tracks.approaches.create(body: request)
299
+ p response.body
300
+ ```
301
+
302
+ ## <a name="tech_passport"></a> Тех. паспорт вагона
303
+ ### <a name="tracks_tech_passport_batch_get"></a> [Получение Тех. Паспортов](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Teh.-pasport-vagona/operation/_________________________tracks_tech_passport_batch_get)
304
+ ```ruby
305
+ request = {
306
+ "track_ids": [
307
+ 0
308
+ ],
309
+ "count": 1
125
310
  }
126
- RailLocatorApi::Request.tracks.delete(body: body)
127
- #ОК, НО НУЖЕН ЕЩЕ МЕТОД
128
- track_id = 123
129
- RailLocatorApi::Request.tracks(track_id).delete
130
- ```
131
- ### <a name="get-track-history"></a> [Получение списка треков](http://soap.ctm.ru:8112/api/v2.0/redoc#operation/________________________tracks_dislocation_get)
132
- ```ruby
133
- params = {
134
- "limit": 10000,
135
- "offset": 0,
136
- "filters": [
137
- {}
138
- ],
139
- "fulltext_filter": "string"
311
+ response = RailLocatorApi::Request.tracks.dislocation.tech_passports.retrieve(body: request)
312
+ p response.body
313
+ ```
314
+ ### <a name="tracks_tech_passport__track_id__get"></a> [Получение Тех. Паспорта](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Teh.-pasport-vagona/operation/_________________________tracks_tech_passport__track_id__get)
315
+ ```ruby
316
+ track_id = 1
317
+ response = RailLocatorApi::Request.tracks.dislocation(track_id).tech_passports.retrieve
318
+ p response.body
319
+ ```
320
+
321
+ ## <a name="tech_condition"></a> Контроль тех. состояния
322
+ ### <a name="tracks_tech_condition_get"></a> [Получение Тех. Состояния](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Kontrol-teh.-sostoyaniya/operation/_________________________tracks_tech_condition_get)
323
+ ```ruby
324
+ request = {
325
+ "limit": 100,
326
+ "offset": 0,
327
+ "filters": [
328
+ {
329
+ "field": "is_broken",
330
+ "operand": "in",
331
+ "value": [
332
+ null,
333
+ true
334
+ ]
335
+ },
336
+ {
337
+ "field": "track_start",
338
+ "operand": ">=",
339
+ "value": "2010-10-10 00:00"
340
+ },
341
+ {
342
+ "field": "track_stop",
343
+ "operand": "between",
344
+ "value": [
345
+ "2010-10-10 00:00",
346
+ "2021-10-10 00:00"
347
+ ]
348
+ }
349
+ ],
350
+ "sort": [
351
+ {
352
+ "field": "active",
353
+ "order": "asc"
354
+ }
355
+ ],
356
+ "fulltext_filter": {
357
+ "value": "2010",
358
+ "fields": [
359
+ "track_start",
360
+ "track_stop"
361
+ ],
362
+ "operation": "include"
363
+ }
364
+ }
365
+ response = RailLocatorApi::Request.tracks.tech_condition.retrieve(body: request)
366
+ p response.body
367
+ ```
368
+
369
+ ### <a name="tracks_tech_condition_post"></a> [Постановка На Слежение](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Kontrol-teh.-sostoyaniya/operation/_______________________tracks_tech_condition_post)
370
+
371
+ ```ruby
372
+ request = [
373
+ {
374
+ "cargo_transport_unit_number": "12345678"
375
+ }
376
+ ]
377
+ response = RailLocatorApi::Request.tracks.tech_condition.create(body: request)
378
+ p response.body
379
+ ```
380
+
381
+ ## <a name="update_delete_tracks"></a> Изменение/Снятие треков
382
+ ### <a name="tracks_batch_delete"></a> [Снятие Со Слежения Нескольких Треков](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/IzmenenieSnyatie-trekov/operation/_____________________________________tracks_batch_delete)
383
+ ```ruby
384
+ request = {
385
+ "track_ids": [
386
+ 123,
387
+ 1234
388
+ ]
389
+ }
390
+ response = RailLocatorApi::Request.tracks.batch.delete(body: request)
391
+ p response.body
392
+ ```
393
+
394
+ ### <a name="tracks_batch_patch"></a> [Изменение Информации О Нескольких Треках](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/IzmenenieSnyatie-trekov/operation/_________________________________________tracks_batch_patch)
395
+ ```ruby
396
+ request = [
397
+ {
398
+ "track_id": 123456,
399
+ "comment": "Примечание трека"
400
+ }
401
+ ]
402
+ response = RailLocatorApi::Request.tracks.batch.update(body: request)
403
+ p response.body
404
+ ```
405
+
406
+ ### <a name="tracks__track_id__delete"></a> [Снятие Со Слежения Одного Трека](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/IzmenenieSnyatie-trekov/operation/________________________________tracks__track_id__delete)
407
+ ```ruby
408
+ track_id = 1
409
+ response = RailLocatorApi::Request.tracks(track_id).delete
410
+ p response.body
411
+ ```
412
+
413
+ ### <a name="tracks__track_id__patch"></a> [Изменение Информации О Треке](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/IzmenenieSnyatie-trekov/operation/_____________________________tracks__track_id__patch)
414
+ ```ruby
415
+ track_id = 1
416
+ request = {
417
+ "comment": "Примечание трека"
418
+ }
419
+ response = RailLocatorApi::Request.tracks(track_id).update(body: request)
420
+ p response.body
421
+ ```
422
+
423
+ ## <a name="groups"></a> Группы
424
+ ### <a name="groups_get"></a> [Получение Списка Групп](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/_______________________groups_get)
425
+ ```ruby
426
+ response = RailLocatorApi::Request.groups.retrieve
427
+ p response.body
428
+ ```
429
+ ### <a name="groups_post"></a> [Создание Группы](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/________________groups_post)
430
+ ```ruby
431
+ request = {
432
+ "group_name": "Название новой группы"
433
+ }
434
+ response = RailLocatorApi::Request.groups.create(body: request)
435
+ p response.body
436
+ ```
437
+ ### <a name="groups__group_id__delete"></a> [Удаление Группы](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/________________groups__group_id__delete)
438
+ ```ruby
439
+ group_id = 1
440
+ response = RailLocatorApi::Request.groups(group_id).delete
441
+ p response.body
442
+ ```
443
+ ### <a name="groups__group_id__patch"></a> [Изменение Группы](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/_________________groups__group_id__patch)
444
+ ```ruby
445
+ group_id = 1
446
+ request = {
447
+ "group_name": "Переименованная группа"
448
+ }
449
+ response = RailLocatorApi::Request.groups(group_id).update(body: request)
450
+ p response.body
451
+ ```
452
+ ### <a name="groups__group_id__cargo_transport_unit_number_batch_put"></a> [Добавление Вагона В Группу](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/___________________________groups__group_id__cargo_transport_unit_number_batch_put)
453
+ ```ruby
454
+ group_id = 1
455
+ request = {
456
+ "cargo_transport_unit_numbers": [
457
+ "ASD1234",
458
+ "F0123454D"
459
+ ]
140
460
  }
141
- RailLocatorApi::Request.tracks.dislocation.retrieve(body: params).body
461
+ response = RailLocatorApi::Request.groups(group_id).cargo_transport_unit_number.batch.update(body: request)
462
+ p response.body
463
+ ```
464
+ ### <a name="groups__group_id__cargo_transport_unit_number_batch_delete"></a> [Удаление Вагонов Из Группы](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/___________________________groups__group_id__cargo_transport_unit_number_batch_delete)
465
+ ```ruby
466
+ group_id = 1
467
+ request = {
468
+ "cargo_transport_unit_numbers": [
469
+ "ASD1234",
470
+ "F0123454D"
471
+ ]
472
+ }
473
+ response = RailLocatorApi::Request.groups(group_id).cargo_transport_unit_number.batch.delete(body: request)
474
+ p response.body
475
+ ```
476
+ ### <a name="groups__group_id__cargo_transport_unit_number__cargo_transport_unit_number__put"></a> [Добавление Вагона В Группу](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/___________________________groups__group_id__cargo_transport_unit_number__cargo_transport_unit_number__put)
477
+ ```ruby
478
+ group_id = 1
479
+ cargo_transport_unit_number = "11111"
480
+ response = RailLocatorApi::Request.groups(group_id).cargo_transport_unit_number(cargo_transport_unit_number).update
481
+ p response.body
482
+ ```
483
+ ### <a name="groups__group_id__cargo_transport_unit_number__cargo_transport_unit_number__delete"></a> [Удаление Вагона Из Группы](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Gruppy/operation/__________________________groups__group_id__cargo_transport_unit_number__cargo_transport_unit_number__delete)
484
+ ```ruby
485
+ group_id = 1
486
+ cargo_transport_unit_number = "11111"
487
+ response = RailLocatorApi::Request.groups(group_id).cargo_transport_unit_number(cargo_transport_unit_number).delete
488
+ p response.body
489
+ ```
490
+
491
+ ## <a name="references"></a> Справочники
492
+ ### <a name="references_station_get"></a> [Получение Координат Станции](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Spravochniki/operation/____________________________references_station_get)
493
+ ```ruby
494
+ response = RailLocatorApi::Request.references.station.retrieve(params: {disloc_id: 1})
495
+ p response.body
496
+ ```
142
497
 
143
- # чем это отличается от [Получение несклько треков]? Это или то история? поправьте нейминги, не понятно
144
- # КАК ДОЛЖНО ВЫГЛЯДЕТЬ ПОЛУЧЕНИЕ ИСТОРИИ ПО ТРЕКУ
145
- RailLocatorApi::Request.tracks(track_id).history.retrieve.body
498
+ ### <a name="references_stations_get"></a> [Получение Списка Станций С Краткой Информацией](http://soap.ctm.ru:8112/api/v2.0/redoc#tag/Spravochniki/operation/_______________________________________________references_stations_get)
499
+ ```ruby
500
+ response = RailLocatorApi::Request.references.stations.retrieve(params: {station_code: "111"})
501
+ p response.body
146
502
  ```
@@ -1,8 +1,12 @@
1
1
  defaults: &defaults
2
- API_KEY: "***"
3
2
  API_ENDPOINT: "http://soap.ctm.ru:8112"
3
+
4
+ API_AUTH_METHOD: "api_key"
5
+ API_KEY: "***"
6
+
4
7
  API_USER_EMAIL: ""
5
8
  API_USER_PASSWORD: ""
9
+
6
10
  KEYCLOAK_TOKEN_URL: "https://iam.ctm.ru/auth/realms/ctm/protocol/openid-connect/token"
7
11
  KEYCLOAK_GRANT_TYPE: "password"
8
12
  KEYCLOAK_CLIENT_ID: "client_id"
@@ -127,6 +127,9 @@ module RailLocatorApi
127
127
  if [:api_key, :keycloak].include?(self.api_auth_method)
128
128
  request.headers['Authorization'] = "Bearer #{RailLocatorApi::Request.access_token}"
129
129
  end
130
+ if [:keycloak].include?(self.api_auth_method)
131
+ request.headers['X-API-KEY'] = "#{RailLocatorApi::Request.api_key}"
132
+ end
130
133
  request.headers['User-Agent'] = "RailLocatorApi/#{RailLocatorApi::VERSION} Ruby gem"
131
134
  if @request_builder.without_ratelimit
132
135
  request.headers['X-Request-Without-Ratelimit'] = "1"
@@ -5,7 +5,7 @@ module RailLocatorApi
5
5
  :without_ratelimit, :logger, :test
6
6
 
7
7
  AUTH_METHODS = [:keycloak, :api_key, :base64]
8
- DEFAULT_AUTH_METHOD = :keycloak
8
+ DEFAULT_AUTH_METHOD = :api_key
9
9
  DEFAULT_TIMEOUT = 60
10
10
  DEFAULT_OPEN_TIMEOUT = 60
11
11
 
@@ -1,3 +1,3 @@
1
1
  module RailLocatorApi
2
- VERSION = "0.0.33"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rail-locator-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.33
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Osetrov