ionoscloud 6.0.2 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/docs/CHANGELOG.md +8 -0
  4. data/docs/api/ApplicationLoadBalancersApi.md +1586 -0
  5. data/docs/api/TargetGroupsApi.md +516 -0
  6. data/docs/models/ApplicationLoadBalancer.md +28 -0
  7. data/docs/models/ApplicationLoadBalancerEntities.md +18 -0
  8. data/docs/models/ApplicationLoadBalancerForwardingRule.md +26 -0
  9. data/docs/models/ApplicationLoadBalancerForwardingRuleProperties.md +30 -0
  10. data/docs/models/ApplicationLoadBalancerForwardingRulePut.md +24 -0
  11. data/docs/models/ApplicationLoadBalancerForwardingRules.md +30 -0
  12. data/docs/models/ApplicationLoadBalancerHttpRule.md +34 -0
  13. data/docs/models/ApplicationLoadBalancerHttpRuleCondition.md +26 -0
  14. data/docs/models/ApplicationLoadBalancerProperties.md +26 -0
  15. data/docs/models/ApplicationLoadBalancerPut.md +24 -0
  16. data/docs/models/ApplicationLoadBalancers.md +30 -0
  17. data/docs/models/TargetGroup.md +26 -0
  18. data/docs/models/TargetGroupHealthCheck.md +22 -0
  19. data/docs/models/TargetGroupHttpHealthCheck.md +28 -0
  20. data/docs/models/TargetGroupProperties.md +28 -0
  21. data/docs/models/TargetGroupPut.md +24 -0
  22. data/docs/models/TargetGroupTarget.md +26 -0
  23. data/docs/models/TargetGroups.md +30 -0
  24. data/lib/ionoscloud/api/application_load_balancers_api.rb +1690 -0
  25. data/lib/ionoscloud/api/target_groups_api.rb +530 -0
  26. data/lib/ionoscloud/api_client.rb +1 -1
  27. data/lib/ionoscloud/models/application_load_balancer.rb +319 -0
  28. data/lib/ionoscloud/models/application_load_balancer_entities.rb +226 -0
  29. data/lib/ionoscloud/models/application_load_balancer_forwarding_rule.rb +302 -0
  30. data/lib/ionoscloud/models/application_load_balancer_forwarding_rule_properties.rb +389 -0
  31. data/lib/ionoscloud/models/application_load_balancer_forwarding_rule_put.rb +285 -0
  32. data/lib/ionoscloud/models/application_load_balancer_forwarding_rules.rb +334 -0
  33. data/lib/ionoscloud/models/application_load_balancer_http_rule.rb +427 -0
  34. data/lib/ionoscloud/models/application_load_balancer_http_rule_condition.rb +355 -0
  35. data/lib/ionoscloud/models/application_load_balancer_properties.rb +314 -0
  36. data/lib/ionoscloud/models/application_load_balancer_put.rb +285 -0
  37. data/lib/ionoscloud/models/application_load_balancers.rb +334 -0
  38. data/lib/ionoscloud/models/target_group.rb +302 -0
  39. data/lib/ionoscloud/models/target_group_health_check.rb +263 -0
  40. data/lib/ionoscloud/models/target_group_http_health_check.rb +373 -0
  41. data/lib/ionoscloud/models/target_group_properties.rb +376 -0
  42. data/lib/ionoscloud/models/target_group_put.rb +285 -0
  43. data/lib/ionoscloud/models/target_group_target.rb +314 -0
  44. data/lib/ionoscloud/models/target_groups.rb +334 -0
  45. data/lib/ionoscloud/version.rb +1 -1
  46. data/lib/ionoscloud.rb +20 -0
  47. metadata +42 -2
@@ -0,0 +1,516 @@
1
+ # TargetGroupsApi
2
+
3
+ All URIs are relative to *https://api.ionos.com/cloudapi/v6*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**target_groups_delete**](TargetGroupsApi.md#target_groups_delete) | **DELETE** /targetgroups/{targetGroupId} | Remove target groups |
8
+ | [**targetgroups_find_by_target_group_id**](TargetGroupsApi.md#targetgroups_find_by_target_group_id) | **GET** /targetgroups/{targetGroupId} | Retrieve target groups |
9
+ | [**targetgroups_get**](TargetGroupsApi.md#targetgroups_get) | **GET** /targetgroups | List target groups |
10
+ | [**targetgroups_patch**](TargetGroupsApi.md#targetgroups_patch) | **PATCH** /targetgroups/{targetGroupId} | Partially modify target groups |
11
+ | [**targetgroups_post**](TargetGroupsApi.md#targetgroups_post) | **POST** /targetgroups | Create target groups |
12
+ | [**targetgroups_put**](TargetGroupsApi.md#targetgroups_put) | **PUT** /targetgroups/{targetGroupId} | Modify target groups |
13
+
14
+
15
+ ## target_groups_delete
16
+
17
+ > target_groups_delete(target_group_id, opts)
18
+
19
+ Remove target groups
20
+
21
+ Remove the specified target group.
22
+
23
+ ### Examples
24
+
25
+ ```ruby
26
+ require 'time'
27
+ require 'ionoscloud'
28
+ # setup authorization
29
+ Ionoscloud.configure do |config|
30
+ # Configure HTTP basic authorization: Basic Authentication
31
+ config.username = 'YOUR USERNAME'
32
+ config.password = 'YOUR PASSWORD'
33
+
34
+ # Configure API key authorization: Token Authentication
35
+ config.api_key['Authorization'] = 'YOUR API KEY'
36
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
37
+ # config.api_key_prefix['Authorization'] = 'Bearer'
38
+ end
39
+
40
+ api_instance = Ionoscloud::TargetGroupsApi.new
41
+ target_group_id = 'target_group_id_example' # String | The unique ID of the target group.
42
+ opts = {
43
+ pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
44
+ depth: 56, # Integer | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
45
+ x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
46
+ }
47
+
48
+ begin
49
+ # Remove target groups
50
+ api_instance.target_groups_delete(target_group_id, opts)
51
+ rescue Ionoscloud::ApiError => e
52
+ puts "Error when calling TargetGroupsApi->target_groups_delete: #{e}"
53
+ end
54
+ ```
55
+
56
+ #### Using the target_groups_delete_with_http_info variant
57
+
58
+ This returns an Array which contains the response data (`nil` in this case), status code and headers.
59
+
60
+ > <Array(nil, Integer, Hash)> target_groups_delete_with_http_info(target_group_id, opts)
61
+
62
+ ```ruby
63
+ begin
64
+ # Remove target groups
65
+ data, status_code, headers = api_instance.target_groups_delete_with_http_info(target_group_id, opts)
66
+ p status_code # => 2xx
67
+ p headers # => { ... }
68
+ p data # => nil
69
+ rescue Ionoscloud::ApiError => e
70
+ puts "Error when calling TargetGroupsApi->target_groups_delete_with_http_info: #{e}"
71
+ end
72
+ ```
73
+
74
+ ### Parameters
75
+
76
+ | Name | Type | Description | Notes |
77
+ | ---- | ---- | ----------- | ----- |
78
+ | **target_group_id** | **String** | The unique ID of the target group. | |
79
+ | **pretty** | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines). | [optional][default to true] |
80
+ | **depth** | **Integer** | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth&#x3D;0: Only direct properties are included; children (servers and other elements) are not included. - depth&#x3D;1: Direct properties and children references are included. - depth&#x3D;2: Direct properties and children properties are included. - depth&#x3D;3: Direct properties and children properties and children&#39;s children are included. - depth&#x3D;... and so on | [optional][default to 0] |
81
+ | **x_contract_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed. | [optional] |
82
+
83
+ ### Return type
84
+
85
+ nil (empty response body)
86
+
87
+ ### Authorization
88
+
89
+ Basic Authentication, Token Authentication
90
+
91
+ ### HTTP request headers
92
+
93
+ - **Content-Type**: Not defined
94
+ - **Accept**: application/json
95
+
96
+
97
+ ## targetgroups_find_by_target_group_id
98
+
99
+ > <TargetGroup> targetgroups_find_by_target_group_id(target_group_id, opts)
100
+
101
+ Retrieve target groups
102
+
103
+ Retrieve the properties of the specified target group.
104
+
105
+ ### Examples
106
+
107
+ ```ruby
108
+ require 'time'
109
+ require 'ionoscloud'
110
+ # setup authorization
111
+ Ionoscloud.configure do |config|
112
+ # Configure HTTP basic authorization: Basic Authentication
113
+ config.username = 'YOUR USERNAME'
114
+ config.password = 'YOUR PASSWORD'
115
+
116
+ # Configure API key authorization: Token Authentication
117
+ config.api_key['Authorization'] = 'YOUR API KEY'
118
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
119
+ # config.api_key_prefix['Authorization'] = 'Bearer'
120
+ end
121
+
122
+ api_instance = Ionoscloud::TargetGroupsApi.new
123
+ target_group_id = 'target_group_id_example' # String | The unique ID of the target group.
124
+ opts = {
125
+ pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
126
+ depth: 56, # Integer | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
127
+ x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
128
+ }
129
+
130
+ begin
131
+ # Retrieve target groups
132
+ result = api_instance.targetgroups_find_by_target_group_id(target_group_id, opts)
133
+ p result
134
+ rescue Ionoscloud::ApiError => e
135
+ puts "Error when calling TargetGroupsApi->targetgroups_find_by_target_group_id: #{e}"
136
+ end
137
+ ```
138
+
139
+ #### Using the targetgroups_find_by_target_group_id_with_http_info variant
140
+
141
+ This returns an Array which contains the response data, status code and headers.
142
+
143
+ > <Array(<TargetGroup>, Integer, Hash)> targetgroups_find_by_target_group_id_with_http_info(target_group_id, opts)
144
+
145
+ ```ruby
146
+ begin
147
+ # Retrieve target groups
148
+ data, status_code, headers = api_instance.targetgroups_find_by_target_group_id_with_http_info(target_group_id, opts)
149
+ p status_code # => 2xx
150
+ p headers # => { ... }
151
+ p data # => <TargetGroup>
152
+ rescue Ionoscloud::ApiError => e
153
+ puts "Error when calling TargetGroupsApi->targetgroups_find_by_target_group_id_with_http_info: #{e}"
154
+ end
155
+ ```
156
+
157
+ ### Parameters
158
+
159
+ | Name | Type | Description | Notes |
160
+ | ---- | ---- | ----------- | ----- |
161
+ | **target_group_id** | **String** | The unique ID of the target group. | |
162
+ | **pretty** | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines). | [optional][default to true] |
163
+ | **depth** | **Integer** | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth&#x3D;0: Only direct properties are included; children (servers and other elements) are not included. - depth&#x3D;1: Direct properties and children references are included. - depth&#x3D;2: Direct properties and children properties are included. - depth&#x3D;3: Direct properties and children properties and children&#39;s children are included. - depth&#x3D;... and so on | [optional][default to 0] |
164
+ | **x_contract_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed. | [optional] |
165
+
166
+ ### Return type
167
+
168
+ [**TargetGroup**](../models/TargetGroup.md)
169
+
170
+ ### Authorization
171
+
172
+ Basic Authentication, Token Authentication
173
+
174
+ ### HTTP request headers
175
+
176
+ - **Content-Type**: Not defined
177
+ - **Accept**: application/json
178
+
179
+
180
+ ## targetgroups_get
181
+
182
+ > <TargetGroups> targetgroups_get(opts)
183
+
184
+ List target groups
185
+
186
+ List all target groups.
187
+
188
+ ### Examples
189
+
190
+ ```ruby
191
+ require 'time'
192
+ require 'ionoscloud'
193
+ # setup authorization
194
+ Ionoscloud.configure do |config|
195
+ # Configure HTTP basic authorization: Basic Authentication
196
+ config.username = 'YOUR USERNAME'
197
+ config.password = 'YOUR PASSWORD'
198
+
199
+ # Configure API key authorization: Token Authentication
200
+ config.api_key['Authorization'] = 'YOUR API KEY'
201
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
202
+ # config.api_key_prefix['Authorization'] = 'Bearer'
203
+ end
204
+
205
+ api_instance = Ionoscloud::TargetGroupsApi.new
206
+ opts = {
207
+ pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
208
+ depth: 56, # Integer | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
209
+ x_contract_number: 56, # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
210
+ offset: 56, # Integer | The first element (from the complete list of the elements) to include in the response (used together with <b><i>limit</i></b> for pagination).
211
+ limit: 56 # Integer | The maximum number of elements to return (used together with <b><i>offset</i></b> for pagination). It must not exceed <b><i>200</i></b>.
212
+ }
213
+
214
+ begin
215
+ # List target groups
216
+ result = api_instance.targetgroups_get(opts)
217
+ p result
218
+ rescue Ionoscloud::ApiError => e
219
+ puts "Error when calling TargetGroupsApi->targetgroups_get: #{e}"
220
+ end
221
+ ```
222
+
223
+ #### Using the targetgroups_get_with_http_info variant
224
+
225
+ This returns an Array which contains the response data, status code and headers.
226
+
227
+ > <Array(<TargetGroups>, Integer, Hash)> targetgroups_get_with_http_info(opts)
228
+
229
+ ```ruby
230
+ begin
231
+ # List target groups
232
+ data, status_code, headers = api_instance.targetgroups_get_with_http_info(opts)
233
+ p status_code # => 2xx
234
+ p headers # => { ... }
235
+ p data # => <TargetGroups>
236
+ rescue Ionoscloud::ApiError => e
237
+ puts "Error when calling TargetGroupsApi->targetgroups_get_with_http_info: #{e}"
238
+ end
239
+ ```
240
+
241
+ ### Parameters
242
+
243
+ | Name | Type | Description | Notes |
244
+ | ---- | ---- | ----------- | ----- |
245
+ | **pretty** | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines). | [optional][default to true] |
246
+ | **depth** | **Integer** | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth&#x3D;0: Only direct properties are included; children (servers and other elements) are not included. - depth&#x3D;1: Direct properties and children references are included. - depth&#x3D;2: Direct properties and children properties are included. - depth&#x3D;3: Direct properties and children properties and children&#39;s children are included. - depth&#x3D;... and so on | [optional][default to 0] |
247
+ | **x_contract_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed. | [optional] |
248
+ | **offset** | **Integer** | The first element (from the complete list of the elements) to include in the response (used together with &lt;b&gt;&lt;i&gt;limit&lt;/i&gt;&lt;/b&gt; for pagination). | [optional][default to 0] |
249
+ | **limit** | **Integer** | The maximum number of elements to return (used together with &lt;b&gt;&lt;i&gt;offset&lt;/i&gt;&lt;/b&gt; for pagination). It must not exceed &lt;b&gt;&lt;i&gt;200&lt;/i&gt;&lt;/b&gt;. | [optional][default to 100] |
250
+
251
+ ### Return type
252
+
253
+ [**TargetGroups**](../models/TargetGroups.md)
254
+
255
+ ### Authorization
256
+
257
+ Basic Authentication, Token Authentication
258
+
259
+ ### HTTP request headers
260
+
261
+ - **Content-Type**: Not defined
262
+ - **Accept**: application/json
263
+
264
+
265
+ ## targetgroups_patch
266
+
267
+ > <TargetGroup> targetgroups_patch(target_group_id, target_group_properties, opts)
268
+
269
+ Partially modify target groups
270
+
271
+ Update the properties of the specified target group.
272
+
273
+ ### Examples
274
+
275
+ ```ruby
276
+ require 'time'
277
+ require 'ionoscloud'
278
+ # setup authorization
279
+ Ionoscloud.configure do |config|
280
+ # Configure HTTP basic authorization: Basic Authentication
281
+ config.username = 'YOUR USERNAME'
282
+ config.password = 'YOUR PASSWORD'
283
+
284
+ # Configure API key authorization: Token Authentication
285
+ config.api_key['Authorization'] = 'YOUR API KEY'
286
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
287
+ # config.api_key_prefix['Authorization'] = 'Bearer'
288
+ end
289
+
290
+ api_instance = Ionoscloud::TargetGroupsApi.new
291
+ target_group_id = 'target_group_id_example' # String | The unique ID of the target group.
292
+ target_group_properties = Ionoscloud::TargetGroupProperties.new({name: 'My target group', algorithm: 'ROUND_ROBIN', protocol: 'HTTP'}) # TargetGroupProperties | The target group properties to be updated.
293
+ opts = {
294
+ pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
295
+ depth: 56, # Integer | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
296
+ x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
297
+ }
298
+
299
+ begin
300
+ # Partially modify target groups
301
+ result = api_instance.targetgroups_patch(target_group_id, target_group_properties, opts)
302
+ p result
303
+ rescue Ionoscloud::ApiError => e
304
+ puts "Error when calling TargetGroupsApi->targetgroups_patch: #{e}"
305
+ end
306
+ ```
307
+
308
+ #### Using the targetgroups_patch_with_http_info variant
309
+
310
+ This returns an Array which contains the response data, status code and headers.
311
+
312
+ > <Array(<TargetGroup>, Integer, Hash)> targetgroups_patch_with_http_info(target_group_id, target_group_properties, opts)
313
+
314
+ ```ruby
315
+ begin
316
+ # Partially modify target groups
317
+ data, status_code, headers = api_instance.targetgroups_patch_with_http_info(target_group_id, target_group_properties, opts)
318
+ p status_code # => 2xx
319
+ p headers # => { ... }
320
+ p data # => <TargetGroup>
321
+ rescue Ionoscloud::ApiError => e
322
+ puts "Error when calling TargetGroupsApi->targetgroups_patch_with_http_info: #{e}"
323
+ end
324
+ ```
325
+
326
+ ### Parameters
327
+
328
+ | Name | Type | Description | Notes |
329
+ | ---- | ---- | ----------- | ----- |
330
+ | **target_group_id** | **String** | The unique ID of the target group. | |
331
+ | **target_group_properties** | [**TargetGroupProperties**](TargetGroupProperties.md) | The target group properties to be updated. | |
332
+ | **pretty** | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines). | [optional][default to true] |
333
+ | **depth** | **Integer** | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth&#x3D;0: Only direct properties are included; children (servers and other elements) are not included. - depth&#x3D;1: Direct properties and children references are included. - depth&#x3D;2: Direct properties and children properties are included. - depth&#x3D;3: Direct properties and children properties and children&#39;s children are included. - depth&#x3D;... and so on | [optional][default to 0] |
334
+ | **x_contract_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed. | [optional] |
335
+
336
+ ### Return type
337
+
338
+ [**TargetGroup**](../models/TargetGroup.md)
339
+
340
+ ### Authorization
341
+
342
+ Basic Authentication, Token Authentication
343
+
344
+ ### HTTP request headers
345
+
346
+ - **Content-Type**: Not defined
347
+ - **Accept**: application/json
348
+
349
+
350
+ ## targetgroups_post
351
+
352
+ > <TargetGroup> targetgroups_post(target_group, opts)
353
+
354
+ Create target groups
355
+
356
+ Create a target group.
357
+
358
+ ### Examples
359
+
360
+ ```ruby
361
+ require 'time'
362
+ require 'ionoscloud'
363
+ # setup authorization
364
+ Ionoscloud.configure do |config|
365
+ # Configure HTTP basic authorization: Basic Authentication
366
+ config.username = 'YOUR USERNAME'
367
+ config.password = 'YOUR PASSWORD'
368
+
369
+ # Configure API key authorization: Token Authentication
370
+ config.api_key['Authorization'] = 'YOUR API KEY'
371
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
372
+ # config.api_key_prefix['Authorization'] = 'Bearer'
373
+ end
374
+
375
+ api_instance = Ionoscloud::TargetGroupsApi.new
376
+ target_group = Ionoscloud::TargetGroup.new({properties: Ionoscloud::TargetGroupProperties.new({name: 'My target group', algorithm: 'ROUND_ROBIN', protocol: 'HTTP'})}) # TargetGroup | The target group to create.
377
+ opts = {
378
+ pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
379
+ depth: 56, # Integer | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
380
+ x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
381
+ }
382
+
383
+ begin
384
+ # Create target groups
385
+ result = api_instance.targetgroups_post(target_group, opts)
386
+ p result
387
+ rescue Ionoscloud::ApiError => e
388
+ puts "Error when calling TargetGroupsApi->targetgroups_post: #{e}"
389
+ end
390
+ ```
391
+
392
+ #### Using the targetgroups_post_with_http_info variant
393
+
394
+ This returns an Array which contains the response data, status code and headers.
395
+
396
+ > <Array(<TargetGroup>, Integer, Hash)> targetgroups_post_with_http_info(target_group, opts)
397
+
398
+ ```ruby
399
+ begin
400
+ # Create target groups
401
+ data, status_code, headers = api_instance.targetgroups_post_with_http_info(target_group, opts)
402
+ p status_code # => 2xx
403
+ p headers # => { ... }
404
+ p data # => <TargetGroup>
405
+ rescue Ionoscloud::ApiError => e
406
+ puts "Error when calling TargetGroupsApi->targetgroups_post_with_http_info: #{e}"
407
+ end
408
+ ```
409
+
410
+ ### Parameters
411
+
412
+ | Name | Type | Description | Notes |
413
+ | ---- | ---- | ----------- | ----- |
414
+ | **target_group** | [**TargetGroup**](TargetGroup.md) | The target group to create. | |
415
+ | **pretty** | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines). | [optional][default to true] |
416
+ | **depth** | **Integer** | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth&#x3D;0: Only direct properties are included; children (servers and other elements) are not included. - depth&#x3D;1: Direct properties and children references are included. - depth&#x3D;2: Direct properties and children properties are included. - depth&#x3D;3: Direct properties and children properties and children&#39;s children are included. - depth&#x3D;... and so on | [optional][default to 0] |
417
+ | **x_contract_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed. | [optional] |
418
+
419
+ ### Return type
420
+
421
+ [**TargetGroup**](../models/TargetGroup.md)
422
+
423
+ ### Authorization
424
+
425
+ Basic Authentication, Token Authentication
426
+
427
+ ### HTTP request headers
428
+
429
+ - **Content-Type**: application/json
430
+ - **Accept**: application/json
431
+
432
+
433
+ ## targetgroups_put
434
+
435
+ > <TargetGroup> targetgroups_put(target_group_id, target_group, opts)
436
+
437
+ Modify target groups
438
+
439
+ Modify the properties of the specified target group.
440
+
441
+ ### Examples
442
+
443
+ ```ruby
444
+ require 'time'
445
+ require 'ionoscloud'
446
+ # setup authorization
447
+ Ionoscloud.configure do |config|
448
+ # Configure HTTP basic authorization: Basic Authentication
449
+ config.username = 'YOUR USERNAME'
450
+ config.password = 'YOUR PASSWORD'
451
+
452
+ # Configure API key authorization: Token Authentication
453
+ config.api_key['Authorization'] = 'YOUR API KEY'
454
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
455
+ # config.api_key_prefix['Authorization'] = 'Bearer'
456
+ end
457
+
458
+ api_instance = Ionoscloud::TargetGroupsApi.new
459
+ target_group_id = 'target_group_id_example' # String | The unique ID of the target group.
460
+ target_group = Ionoscloud::TargetGroupPut.new({properties: Ionoscloud::TargetGroupProperties.new({name: 'My target group', algorithm: 'ROUND_ROBIN', protocol: 'HTTP'})}) # TargetGroupPut | The modified target group.
461
+ opts = {
462
+ pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
463
+ depth: 56, # Integer | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
464
+ x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
465
+ }
466
+
467
+ begin
468
+ # Modify target groups
469
+ result = api_instance.targetgroups_put(target_group_id, target_group, opts)
470
+ p result
471
+ rescue Ionoscloud::ApiError => e
472
+ puts "Error when calling TargetGroupsApi->targetgroups_put: #{e}"
473
+ end
474
+ ```
475
+
476
+ #### Using the targetgroups_put_with_http_info variant
477
+
478
+ This returns an Array which contains the response data, status code and headers.
479
+
480
+ > <Array(<TargetGroup>, Integer, Hash)> targetgroups_put_with_http_info(target_group_id, target_group, opts)
481
+
482
+ ```ruby
483
+ begin
484
+ # Modify target groups
485
+ data, status_code, headers = api_instance.targetgroups_put_with_http_info(target_group_id, target_group, opts)
486
+ p status_code # => 2xx
487
+ p headers # => { ... }
488
+ p data # => <TargetGroup>
489
+ rescue Ionoscloud::ApiError => e
490
+ puts "Error when calling TargetGroupsApi->targetgroups_put_with_http_info: #{e}"
491
+ end
492
+ ```
493
+
494
+ ### Parameters
495
+
496
+ | Name | Type | Description | Notes |
497
+ | ---- | ---- | ----------- | ----- |
498
+ | **target_group_id** | **String** | The unique ID of the target group. | |
499
+ | **target_group** | [**TargetGroupPut**](TargetGroupPut.md) | The modified target group. | |
500
+ | **pretty** | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines). | [optional][default to true] |
501
+ | **depth** | **Integer** | Controls the detail depth of the response objects. GET /datacenters/[ID] - depth&#x3D;0: Only direct properties are included; children (servers and other elements) are not included. - depth&#x3D;1: Direct properties and children references are included. - depth&#x3D;2: Direct properties and children properties are included. - depth&#x3D;3: Direct properties and children properties and children&#39;s children are included. - depth&#x3D;... and so on | [optional][default to 0] |
502
+ | **x_contract_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed. | [optional] |
503
+
504
+ ### Return type
505
+
506
+ [**TargetGroup**](../models/TargetGroup.md)
507
+
508
+ ### Authorization
509
+
510
+ Basic Authentication, Token Authentication
511
+
512
+ ### HTTP request headers
513
+
514
+ - **Content-Type**: application/json
515
+ - **Accept**: application/json
516
+
@@ -0,0 +1,28 @@
1
+ # ApplicationLoadBalancer
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier. | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created. | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path). | [optional][readonly] |
10
+ | **metadata** | [**DatacenterElementMetadata**](DatacenterElementMetadata.md) | | [optional] |
11
+ | **properties** | [**ApplicationLoadBalancerProperties**](ApplicationLoadBalancerProperties.md) | | |
12
+ | **entities** | [**ApplicationLoadBalancerEntities**](ApplicationLoadBalancerEntities.md) | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'ionoscloud'
18
+
19
+ instance = Ionoscloud::ApplicationLoadBalancer.new(
20
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
21
+ type: "applicationloadbalancer",
22
+ href: <RESOURCE-URI>,
23
+ metadata: null,
24
+ properties: null,
25
+ entities: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,18 @@
1
+ # ApplicationLoadBalancerEntities
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **forwardingrules** | [**ApplicationLoadBalancerForwardingRules**](ApplicationLoadBalancerForwardingRules.md) | | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'ionoscloud'
13
+
14
+ instance = Ionoscloud::ApplicationLoadBalancerEntities.new(
15
+ forwardingrules: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,26 @@
1
+ # ApplicationLoadBalancerForwardingRule
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier. | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created. | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path). | [optional][readonly] |
10
+ | **metadata** | [**DatacenterElementMetadata**](DatacenterElementMetadata.md) | | [optional] |
11
+ | **properties** | [**ApplicationLoadBalancerForwardingRuleProperties**](ApplicationLoadBalancerForwardingRuleProperties.md) | | |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'ionoscloud'
17
+
18
+ instance = Ionoscloud::ApplicationLoadBalancerForwardingRule.new(
19
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
20
+ type: "forwarding-rule",
21
+ href: <RESOURCE-URI>,
22
+ metadata: null,
23
+ properties: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,30 @@
1
+ # ApplicationLoadBalancerForwardingRuleProperties
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **name** | **String** | The name of the Application Load Balancer forwarding rule. | |
8
+ | **protocol** | **String** | Balancing protocol | |
9
+ | **listener_ip** | **String** | Listening (inbound) IP | |
10
+ | **listener_port** | **Integer** | Listening (inbound) port number; valid range is 1 to 65535. | |
11
+ | **client_timeout** | **Integer** | The maximum time in milliseconds to wait for the client to acknowledge or send data; default is 50,000 (50 seconds). | [optional] |
12
+ | **server_certificates** | **Array&lt;String&gt;** | Array of items in the collection. | [optional] |
13
+ | **http_rules** | [**Array&lt;ApplicationLoadBalancerHttpRule&gt;**](ApplicationLoadBalancerHttpRule.md) | An array of items in the collection. The original order of rules is perserved during processing, except for Forward-type rules are processed after the rules with other action defined. The relative order of Forward-type rules is also preserved during the processing. | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ionoscloud'
19
+
20
+ instance = Ionoscloud::ApplicationLoadBalancerForwardingRuleProperties.new(
21
+ name: My Application Load Balancer forwarding rule,
22
+ protocol: HTTP,
23
+ listener_ip: 81.173.1.2,
24
+ listener_port: 8080,
25
+ client_timeout: 50,
26
+ server_certificates: [3839d24f-57bd-408e-96ee-8da3d2db5a03, a6b4f7d5-b23a-4f53-b83e-8a6528ab4612],
27
+ http_rules: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,24 @@
1
+ # ApplicationLoadBalancerForwardingRulePut
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier. | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created. | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path). | [optional][readonly] |
10
+ | **properties** | [**ApplicationLoadBalancerForwardingRuleProperties**](ApplicationLoadBalancerForwardingRuleProperties.md) | | |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'ionoscloud'
16
+
17
+ instance = Ionoscloud::ApplicationLoadBalancerForwardingRulePut.new(
18
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
19
+ type: "forwarding-rule",
20
+ href: <RESOURCE-URI>,
21
+ properties: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,30 @@
1
+ # ApplicationLoadBalancerForwardingRules
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The resource&#39;s unique identifier. | [optional][readonly] |
8
+ | **type** | [**Type**](Type.md) | The type of object that has been created. | [optional] |
9
+ | **href** | **String** | URL to the object representation (absolute path). | [optional][readonly] |
10
+ | **items** | [**Array&lt;ApplicationLoadBalancerForwardingRule&gt;**](ApplicationLoadBalancerForwardingRule.md) | Array of items in the collection. | [optional][readonly] |
11
+ | **offset** | **Float** | The offset (if specified in the request). | [optional] |
12
+ | **limit** | **Float** | The limit (if specified in the request). | [optional] |
13
+ | **_links** | [**PaginationLinks**](PaginationLinks.md) | | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ionoscloud'
19
+
20
+ instance = Ionoscloud::ApplicationLoadBalancerForwardingRules.new(
21
+ id: 15f67991-0f51-4efc-a8ad-ef1fb31a480c,
22
+ type: "collection",
23
+ href: <RESOURCE-URI>,
24
+ items: null,
25
+ offset: 0,
26
+ limit: 1000,
27
+ _links: null
28
+ )
29
+ ```
30
+