hyperstack 1.25.0a0__py3-none-any.whl → 1.41.0a0__py3-none-any.whl

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.
Files changed (225) hide show
  1. hyperstack/__init__.py +79 -131
  2. hyperstack/api/__init__.py +2 -0
  3. hyperstack/api/alive_api.py +240 -0
  4. hyperstack/api/api_key_api.py +16 -20
  5. hyperstack/api/assigning_member_role_api.py +15 -17
  6. hyperstack/api/auth_api.py +1050 -5
  7. hyperstack/api/beta_access_api.py +856 -0
  8. hyperstack/api/billing_api.py +6461 -673
  9. hyperstack/api/calculate_api.py +8 -9
  10. hyperstack/api/callbacks_api.py +120 -126
  11. hyperstack/api/cluster_events_api.py +1 -2
  12. hyperstack/api/clusters_api.py +2492 -146
  13. hyperstack/api/compliance_api.py +14 -18
  14. hyperstack/api/credit_api.py +17 -15
  15. hyperstack/api/customer_contract_api.py +30 -33
  16. hyperstack/api/dashboard_api.py +4 -5
  17. hyperstack/api/deployment_api.py +4 -8
  18. hyperstack/api/environment_api.py +285 -16
  19. hyperstack/api/firewall_attachment_api.py +11 -9
  20. hyperstack/api/firewalls_api.py +341 -347
  21. hyperstack/api/flavor_api.py +4 -5
  22. hyperstack/api/floating_ip_api.py +50 -49
  23. hyperstack/api/gpu_api.py +1 -2
  24. hyperstack/api/image_api.py +35 -39
  25. hyperstack/api/invite_api.py +288 -18
  26. hyperstack/api/keypair_api.py +22 -26
  27. hyperstack/api/organization_api.py +12 -15
  28. hyperstack/api/partner_config_api.py +564 -0
  29. hyperstack/api/payment_api.py +299 -18
  30. hyperstack/api/permission_api.py +4 -5
  31. hyperstack/api/policy_api.py +4 -5
  32. hyperstack/api/pricebook_api.py +14 -12
  33. hyperstack/api/profile_api.py +13 -17
  34. hyperstack/api/rbac_role_api.py +20 -25
  35. hyperstack/api/region_api.py +7 -8
  36. hyperstack/api/security_rules_api.py +1 -2
  37. hyperstack/api/snapshot_events_api.py +1 -2
  38. hyperstack/api/snapshots_api.py +166 -172
  39. hyperstack/api/stock_api.py +4 -5
  40. hyperstack/api/template_api.py +14 -19
  41. hyperstack/api/user_api.py +55 -49
  42. hyperstack/api/user_detail_choice_api.py +1 -2
  43. hyperstack/api/user_permission_api.py +8 -10
  44. hyperstack/api/virtual_machine_api.py +1529 -929
  45. hyperstack/api/virtual_machine_events_api.py +21 -22
  46. hyperstack/api/vnc_url_api.py +54 -50
  47. hyperstack/api/volume_api.py +340 -40
  48. hyperstack/api/volume_attachment_api.py +342 -42
  49. hyperstack/api_client.py +1 -1
  50. hyperstack/configuration.py +1 -11
  51. hyperstack/models/__init__.py +76 -130
  52. hyperstack/models/{environment_fieldsfor_volume.py → access_token_field.py} +7 -7
  53. hyperstack/models/attach_volume_fields.py +6 -2
  54. hyperstack/models/attach_volumes_payload.py +4 -2
  55. hyperstack/models/{virtual_machine_usage.py → attachments_fields_for_volume.py} +13 -11
  56. hyperstack/models/{flavor_vm_fields.py → attributes.py} +15 -18
  57. hyperstack/models/auth_get_token_response_model.py +4 -6
  58. hyperstack/models/{future_node_model.py → beta_access_request_fields.py} +27 -25
  59. hyperstack/models/{create_gpu.py → beta_access_request_payload.py} +9 -11
  60. hyperstack/models/{create_discount_response.py → beta_access_request_response_model.py} +11 -11
  61. hyperstack/models/{export_billing_data_request.py → beta_access_status_item.py} +20 -23
  62. hyperstack/models/{get_all_discount_for_all_organization_response.py → beta_access_status_response_model.py} +15 -15
  63. hyperstack/models/{exclude_billing_post_response.py → billing_history.py} +13 -11
  64. hyperstack/models/billing_history_data_synthesis_details.py +105 -0
  65. hyperstack/models/{vm_usage_response.py → billing_history_fine_tuning.py} +23 -19
  66. hyperstack/models/billing_history_model_evalutation_details.py +105 -0
  67. hyperstack/models/{get_all_discounts_fields.py → billing_history_serverless_inference.py} +23 -24
  68. hyperstack/models/billing_history_serverless_inference_details.py +105 -0
  69. hyperstack/models/{billingmetricesfields.py → billing_metrices_fields.py} +4 -4
  70. hyperstack/models/{billingmetricesresponse.py → billing_metrices_response.py} +7 -7
  71. hyperstack/models/cluster_fields.py +27 -9
  72. hyperstack/models/{add_update_flavor_organization_payload.py → cluster_flavor_fields.py} +28 -26
  73. hyperstack/models/{historical_instances_fields.py → cluster_node_fields.py} +24 -22
  74. hyperstack/models/{internal_instance_flavor_fields.py → cluster_node_group_fields.py} +17 -17
  75. hyperstack/models/{create_update_policy_response_model.py → cluster_node_groups_create_response.py} +21 -11
  76. hyperstack/models/{create_update_permission_response_model.py → cluster_node_groups_get_response.py} +11 -11
  77. hyperstack/models/{auth_request_login_response_model.py → cluster_node_groups_list_response.py} +15 -11
  78. hyperstack/models/{contract_eligible_instance_fields.py → cluster_node_instance_fields.py} +13 -11
  79. hyperstack/models/{image_logos.py → cluster_nodes_list_response.py} +14 -14
  80. hyperstack/models/{internal_environment_fields.py → cluster_version.py} +13 -9
  81. hyperstack/models/cluster_versions.py +10 -2
  82. hyperstack/models/{future_nodes_stock_model.py → colors.py} +17 -15
  83. hyperstack/models/contract_discount_plan_fields.py +3 -1
  84. hyperstack/models/contract_instance_fields.py +7 -1
  85. hyperstack/models/{future_node_response_model.py → create_cluster_node_fields.py} +23 -18
  86. hyperstack/models/{update_gpu.py → create_cluster_node_group_payload.py} +12 -11
  87. hyperstack/models/create_cluster_payload.py +31 -8
  88. hyperstack/models/create_environment.py +1 -1
  89. hyperstack/models/create_instances_payload.py +7 -7
  90. hyperstack/models/create_profile_payload.py +1 -1
  91. hyperstack/models/create_snapshot_payload.py +2 -4
  92. hyperstack/models/create_volume_payload.py +1 -1
  93. hyperstack/models/data_synthesis_billing_history_details_response_schema.py +95 -0
  94. hyperstack/models/{deployment_fieldsforstartdeployments.py → deployment_fields_for_start_deployments.py} +4 -4
  95. hyperstack/models/{editlabelofanexisting_vm_payload.py → edit_label_of_an_existing_vm_payload.py} +4 -4
  96. hyperstack/models/environment_features.py +14 -2
  97. hyperstack/models/{node_stocks_payload.py → environment_fields_for_volume.py} +10 -12
  98. hyperstack/models/flavor_fields.py +3 -1
  99. hyperstack/models/{customer_fields.py → flavor_label_fields.py} +7 -7
  100. hyperstack/models/{getcreditandthresholdinfo.py → get_credit_and_threshold_info.py} +4 -4
  101. hyperstack/models/{getcreditandthresholdinfoinresponse.py → get_credit_and_threshold_info_in_response.py} +7 -7
  102. hyperstack/models/{region_payload.py → get_instance_logs_response.py} +7 -9
  103. hyperstack/models/instance_fields.py +8 -4
  104. hyperstack/models/instance_flavor_fields.py +13 -1
  105. hyperstack/models/{flavor_response.py → keypair_environment_features.py} +20 -16
  106. hyperstack/models/{internal_instance_keypair_fields.py → keypair_environment_fields.py} +13 -11
  107. hyperstack/models/keypair_fields.py +6 -2
  108. hyperstack/models/{lastdaycostfields.py → last_day_cost_fields.py} +4 -4
  109. hyperstack/models/{lastdaycostresponse.py → last_day_cost_response.py} +7 -7
  110. hyperstack/models/{export_billing_data_response.py → logos.py} +13 -9
  111. hyperstack/models/{creditrequestresponse.py → master_flavors_response.py} +14 -14
  112. hyperstack/models/{customer_payload.py → mfa_status_fields.py} +8 -10
  113. hyperstack/models/{gpu.py → mfa_status_response.py} +11 -11
  114. hyperstack/models/model_evaluation_billing_history_details_response_schema.py +95 -0
  115. hyperstack/models/{organization_thresholdfields.py → organization_threshold_fields.py} +4 -4
  116. hyperstack/models/{organizationthresholdupdateresponse.py → organization_threshold_update_response.py} +7 -7
  117. hyperstack/models/{organizationthresholdsresponse.py → organization_thresholds_response.py} +7 -7
  118. hyperstack/models/{logo_get_response.py → pagination.py} +12 -12
  119. hyperstack/models/{billing_response.py → partner_config.py} +31 -20
  120. hyperstack/models/payment_details_fields.py +5 -1
  121. hyperstack/models/{logout_payload.py → primary_color.py} +10 -8
  122. hyperstack/models/region_fields.py +16 -2
  123. hyperstack/models/{vm_usage_request_payload.py → request_instance_logs_payload.py} +8 -8
  124. hyperstack/models/{stock_visibility_user_payload.py → request_instance_logs_response.py} +8 -8
  125. hyperstack/models/{contract_billing_history.py → resource_level_billing_bucket_details_resources.py} +10 -10
  126. hyperstack/models/{node_response_model.py → resource_level_billing_history_resources_cluster.py} +21 -11
  127. hyperstack/models/resource_level_billing_history_response_attributes.py +3 -1
  128. hyperstack/models/{get_all_contracts_response_model.py → resource_level_bucket_billing_details_response_model.py} +11 -15
  129. hyperstack/models/{contract_billing_history_response_model.py → resource_level_bucket_billing_history_response_model.py} +11 -11
  130. hyperstack/models/resource_level_cluster_billing_details_response_model.py +95 -0
  131. hyperstack/models/resource_level_cluster_billing_history_response_model.py +95 -0
  132. hyperstack/models/{get_discount_detail_response.py → resource_level_cluster_graph_billing_details_response_model.py} +11 -11
  133. hyperstack/models/{organization_object_response.py → resource_level_graph_billing_details_bucket.py} +18 -14
  134. hyperstack/models/{update_discounts_status_payload.py → secondary_color.py} +10 -8
  135. hyperstack/models/{security_rules_fieldsfor_instance.py → security_rules_fields_for_instance.py} +4 -4
  136. hyperstack/models/serverless_inferenced_billing_history_details_response_schema.py +95 -0
  137. hyperstack/models/snapshot_fields.py +6 -1
  138. hyperstack/models/snapshot_retrieve_fields.py +29 -2
  139. hyperstack/models/start_deployment.py +3 -3
  140. hyperstack/models/{subscribeorunsubscribeupdatepayload.py → subscribe_or_unsubscribe_update_payload.py} +4 -4
  141. hyperstack/models/token_based_billing_history_response.py +95 -0
  142. hyperstack/models/{update_keypairnameresponse.py → update_keypair_name_response.py} +4 -4
  143. hyperstack/models/update_volume_attachment_payload.py +87 -0
  144. hyperstack/models/{verify_api_key_payload.py → update_volume_payload.py} +7 -7
  145. hyperstack/models/{stock_visibility_user_list_response.py → update_volume_response.py} +14 -16
  146. hyperstack/models/{auth_request_login_fields.py → uris.py} +19 -9
  147. hyperstack/models/{userinfopostpayload.py → user_info_post_payload.py} +4 -4
  148. hyperstack/models/{node_stock_response_model.py → user_organizations_response.py} +14 -14
  149. hyperstack/models/users_info_fields.py +3 -1
  150. hyperstack/models/volume_attachment_fields.py +9 -5
  151. hyperstack/models/volume_fields.py +14 -4
  152. hyperstack/models/{volume_fieldsfor_instance.py → volume_fields_for_instance.py} +4 -4
  153. hyperstack/models/volumes.py +17 -11
  154. hyperstack/models/{instances_summary_fields.py → volumes_fields.py} +33 -29
  155. hyperstack/models/workload_billing_history_response.py +95 -0
  156. {hyperstack-1.25.0a0.dist-info → hyperstack-1.41.0a0.dist-info}/METADATA +2 -2
  157. hyperstack-1.41.0a0.dist-info/RECORD +349 -0
  158. {hyperstack-1.25.0a0.dist-info → hyperstack-1.41.0a0.dist-info}/WHEEL +1 -1
  159. hyperstack/models/api_key_verify_fields.py +0 -93
  160. hyperstack/models/billing_immune_resources_response.py +0 -95
  161. hyperstack/models/contract_billing_history_response_attributes.py +0 -99
  162. hyperstack/models/contract_change_payload.py +0 -101
  163. hyperstack/models/contract_eligible_instances_response.py +0 -101
  164. hyperstack/models/contract_event_create_model.py +0 -91
  165. hyperstack/models/contract_resource_payload.py +0 -95
  166. hyperstack/models/contractl_billing_history_response_metrics.py +0 -87
  167. hyperstack/models/create_contract_fields.py +0 -110
  168. hyperstack/models/create_contract_payload.py +0 -106
  169. hyperstack/models/create_discounts_payload.py +0 -112
  170. hyperstack/models/create_update_permission_payload.py +0 -93
  171. hyperstack/models/create_update_policy_payload.py +0 -93
  172. hyperstack/models/creditrechargelimitfield.py +0 -93
  173. hyperstack/models/creditrechargelimitresponse.py +0 -99
  174. hyperstack/models/creditrequests.py +0 -96
  175. hyperstack/models/data.py +0 -91
  176. hyperstack/models/discount_entity_model.py +0 -97
  177. hyperstack/models/discount_fields.py +0 -100
  178. hyperstack/models/discount_plan_fields.py +0 -108
  179. hyperstack/models/discount_resource_fields.py +0 -93
  180. hyperstack/models/discount_resource_payload.py +0 -93
  181. hyperstack/models/exclude_billing_post_payload.py +0 -91
  182. hyperstack/models/field_change.py +0 -91
  183. hyperstack/models/flavor_payload.py +0 -101
  184. hyperstack/models/flavor_vms_response.py +0 -99
  185. hyperstack/models/future_node_stock_model.py +0 -93
  186. hyperstack/models/future_node_update_model.py +0 -98
  187. hyperstack/models/get_all_contract_fields.py +0 -100
  188. hyperstack/models/get_discount_response.py +0 -99
  189. hyperstack/models/get_entity_discount_detail_response.py +0 -108
  190. hyperstack/models/get_token_payload.py +0 -89
  191. hyperstack/models/get_version_response.py +0 -91
  192. hyperstack/models/historical_instance.py +0 -101
  193. hyperstack/models/infrahub_resource_object_response.py +0 -119
  194. hyperstack/models/insert_discount_plan_fields.py +0 -112
  195. hyperstack/models/internal_instance_fields.py +0 -156
  196. hyperstack/models/internal_instance_image_fields.py +0 -95
  197. hyperstack/models/internal_instances_response.py +0 -99
  198. hyperstack/models/internal_security_rules_fields_for_instance.py +0 -104
  199. hyperstack/models/internal_volume_attachment_fields.py +0 -98
  200. hyperstack/models/internal_volume_fields.py +0 -95
  201. hyperstack/models/internal_volumes_response.py +0 -99
  202. hyperstack/models/new_stock_update_response_model.py +0 -89
  203. hyperstack/models/node_model.py +0 -114
  204. hyperstack/models/node_payload_model.py +0 -97
  205. hyperstack/models/node_power_usage_model.py +0 -120
  206. hyperstack/models/node_stock_payload_model.py +0 -95
  207. hyperstack/models/organizationcreditrechargelimitresponse.py +0 -95
  208. hyperstack/models/power_usage_model.py +0 -89
  209. hyperstack/models/pricebook_resource_object_response.py +0 -107
  210. hyperstack/models/refresh_token_payload.py +0 -89
  211. hyperstack/models/region_response.py +0 -95
  212. hyperstack/models/set_defaults_payload.py +0 -89
  213. hyperstack/models/single_visibility_user_response.py +0 -91
  214. hyperstack/models/success_response_model.py +0 -89
  215. hyperstack/models/token_fields.py +0 -91
  216. hyperstack/models/update_contract_payload.py +0 -104
  217. hyperstack/models/update_discounts_payload.py +0 -102
  218. hyperstack/models/user_transfer_payload.py +0 -89
  219. hyperstack/models/verify_api_key_response_model.py +0 -95
  220. hyperstack/models/volume_status_change_fields.py +0 -96
  221. hyperstack/models/volumes_last_status_change_response.py +0 -99
  222. hyperstack/models/warning_mail_log_fields.py +0 -99
  223. hyperstack/models/warning_mail_log_response.py +0 -101
  224. hyperstack-1.25.0a0.dist-info/RECORD +0 -401
  225. {hyperstack-1.25.0a0.dist-info → hyperstack-1.41.0a0.dist-info}/top_level.txt +0 -0
@@ -16,11 +16,20 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
16
  from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
- from pydantic import StrictInt, StrictStr
19
+ from pydantic import Field, StrictInt, StrictStr
20
+ from typing import Optional
21
+ from typing_extensions import Annotated
20
22
  from ..models.cluster_list_response import ClusterListResponse
23
+ from ..models.cluster_node_groups_create_response import ClusterNodeGroupsCreateResponse
24
+ from ..models.cluster_node_groups_get_response import ClusterNodeGroupsGetResponse
25
+ from ..models.cluster_node_groups_list_response import ClusterNodeGroupsListResponse
26
+ from ..models.cluster_nodes_list_response import ClusterNodesListResponse
21
27
  from ..models.cluster_response import ClusterResponse
22
28
  from ..models.cluster_versions import ClusterVersions
29
+ from ..models.create_cluster_node_fields import CreateClusterNodeFields
30
+ from ..models.create_cluster_node_group_payload import CreateClusterNodeGroupPayload
23
31
  from ..models.create_cluster_payload import CreateClusterPayload
32
+ from ..models.master_flavors_response import MasterFlavorsResponse
24
33
  from ..models.name_available_model import NameAvailableModel
25
34
  from ..models.response_model import ResponseModel
26
35
 
@@ -100,6 +109,7 @@ class ClustersApi:
100
109
  '401': "ErrorResponseModel",
101
110
  '404': "ErrorResponseModel",
102
111
  '409': "ErrorResponseModel",
112
+ '422': "ErrorResponseModel",
103
113
  '500': None,
104
114
  }
105
115
  response_data = self.api_client.call_api(
@@ -171,6 +181,7 @@ class ClustersApi:
171
181
  '401': "ErrorResponseModel",
172
182
  '404': "ErrorResponseModel",
173
183
  '409': "ErrorResponseModel",
184
+ '422': "ErrorResponseModel",
174
185
  '500': None,
175
186
  }
176
187
  response_data = self.api_client.call_api(
@@ -242,6 +253,7 @@ class ClustersApi:
242
253
  '401': "ErrorResponseModel",
243
254
  '404': "ErrorResponseModel",
244
255
  '409': "ErrorResponseModel",
256
+ '422': "ErrorResponseModel",
245
257
  '500': None,
246
258
  }
247
259
  response_data = self.api_client.call_api(
@@ -307,8 +319,7 @@ class ClustersApi:
307
319
 
308
320
  # authentication setting
309
321
  _auth_settings: List[str] = [
310
- 'apiKey',
311
- 'accessToken'
322
+ 'apiKey'
312
323
  ]
313
324
 
314
325
  return self.api_client.param_serialize(
@@ -330,9 +341,10 @@ class ClustersApi:
330
341
 
331
342
 
332
343
  @validate_call
333
- def delete_a_cluster(
344
+ def create_node(
334
345
  self,
335
- id: StrictInt,
346
+ cluster_id: StrictInt,
347
+ payload: CreateClusterNodeFields,
336
348
  _request_timeout: Union[
337
349
  None,
338
350
  Annotated[StrictFloat, Field(gt=0)],
@@ -345,12 +357,14 @@ class ClustersApi:
345
357
  _content_type: Optional[StrictStr] = None,
346
358
  _headers: Optional[Dict[StrictStr, Any]] = None,
347
359
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
348
- ) -> ResponseModel:
349
- """Delete a cluster
360
+ ) -> ClusterNodesListResponse:
361
+ """Create Node
350
362
 
351
363
 
352
- :param id: (required)
353
- :type id: int
364
+ :param cluster_id: (required)
365
+ :type cluster_id: int
366
+ :param payload: (required)
367
+ :type payload: CreateClusterNodeFields
354
368
  :param _request_timeout: timeout setting for this request. If one
355
369
  number provided, it will be total request
356
370
  timeout. It can also be a pair (tuple) of
@@ -373,8 +387,9 @@ class ClustersApi:
373
387
  :return: Returns the result object.
374
388
  """ # noqa: E501
375
389
 
376
- _param = self._delete_a_cluster_serialize(
377
- id=id,
390
+ _param = self._create_node_serialize(
391
+ cluster_id=cluster_id,
392
+ payload=payload,
378
393
  _request_auth=_request_auth,
379
394
  _content_type=_content_type,
380
395
  _headers=_headers,
@@ -382,10 +397,11 @@ class ClustersApi:
382
397
  )
383
398
 
384
399
  _response_types_map: Dict[str, Optional[str]] = {
385
- '200': "ResponseModel",
400
+ '201': "ClusterNodesListResponse",
386
401
  '400': "ErrorResponseModel",
387
402
  '401': "ErrorResponseModel",
388
403
  '404': "ErrorResponseModel",
404
+ '409': "ErrorResponseModel",
389
405
  '500': None,
390
406
  }
391
407
  response_data = self.api_client.call_api(
@@ -400,9 +416,10 @@ class ClustersApi:
400
416
 
401
417
 
402
418
  @validate_call
403
- def delete_a_cluster_with_http_info(
419
+ def create_node_with_http_info(
404
420
  self,
405
- id: StrictInt,
421
+ cluster_id: StrictInt,
422
+ payload: CreateClusterNodeFields,
406
423
  _request_timeout: Union[
407
424
  None,
408
425
  Annotated[StrictFloat, Field(gt=0)],
@@ -415,12 +432,14 @@ class ClustersApi:
415
432
  _content_type: Optional[StrictStr] = None,
416
433
  _headers: Optional[Dict[StrictStr, Any]] = None,
417
434
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
418
- ) -> ApiResponse[ResponseModel]:
419
- """Delete a cluster
435
+ ) -> ApiResponse[ClusterNodesListResponse]:
436
+ """Create Node
420
437
 
421
438
 
422
- :param id: (required)
423
- :type id: int
439
+ :param cluster_id: (required)
440
+ :type cluster_id: int
441
+ :param payload: (required)
442
+ :type payload: CreateClusterNodeFields
424
443
  :param _request_timeout: timeout setting for this request. If one
425
444
  number provided, it will be total request
426
445
  timeout. It can also be a pair (tuple) of
@@ -443,8 +462,9 @@ class ClustersApi:
443
462
  :return: Returns the result object.
444
463
  """ # noqa: E501
445
464
 
446
- _param = self._delete_a_cluster_serialize(
447
- id=id,
465
+ _param = self._create_node_serialize(
466
+ cluster_id=cluster_id,
467
+ payload=payload,
448
468
  _request_auth=_request_auth,
449
469
  _content_type=_content_type,
450
470
  _headers=_headers,
@@ -452,10 +472,11 @@ class ClustersApi:
452
472
  )
453
473
 
454
474
  _response_types_map: Dict[str, Optional[str]] = {
455
- '200': "ResponseModel",
475
+ '201': "ClusterNodesListResponse",
456
476
  '400': "ErrorResponseModel",
457
477
  '401': "ErrorResponseModel",
458
478
  '404': "ErrorResponseModel",
479
+ '409': "ErrorResponseModel",
459
480
  '500': None,
460
481
  }
461
482
  response_data = self.api_client.call_api(
@@ -470,9 +491,10 @@ class ClustersApi:
470
491
 
471
492
 
472
493
  @validate_call
473
- def delete_a_cluster_without_preload_content(
494
+ def create_node_without_preload_content(
474
495
  self,
475
- id: StrictInt,
496
+ cluster_id: StrictInt,
497
+ payload: CreateClusterNodeFields,
476
498
  _request_timeout: Union[
477
499
  None,
478
500
  Annotated[StrictFloat, Field(gt=0)],
@@ -486,11 +508,13 @@ class ClustersApi:
486
508
  _headers: Optional[Dict[StrictStr, Any]] = None,
487
509
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
488
510
  ) -> RESTResponseType:
489
- """Delete a cluster
511
+ """Create Node
490
512
 
491
513
 
492
- :param id: (required)
493
- :type id: int
514
+ :param cluster_id: (required)
515
+ :type cluster_id: int
516
+ :param payload: (required)
517
+ :type payload: CreateClusterNodeFields
494
518
  :param _request_timeout: timeout setting for this request. If one
495
519
  number provided, it will be total request
496
520
  timeout. It can also be a pair (tuple) of
@@ -513,8 +537,9 @@ class ClustersApi:
513
537
  :return: Returns the result object.
514
538
  """ # noqa: E501
515
539
 
516
- _param = self._delete_a_cluster_serialize(
517
- id=id,
540
+ _param = self._create_node_serialize(
541
+ cluster_id=cluster_id,
542
+ payload=payload,
518
543
  _request_auth=_request_auth,
519
544
  _content_type=_content_type,
520
545
  _headers=_headers,
@@ -522,10 +547,11 @@ class ClustersApi:
522
547
  )
523
548
 
524
549
  _response_types_map: Dict[str, Optional[str]] = {
525
- '200': "ResponseModel",
550
+ '201': "ClusterNodesListResponse",
526
551
  '400': "ErrorResponseModel",
527
552
  '401': "ErrorResponseModel",
528
553
  '404': "ErrorResponseModel",
554
+ '409': "ErrorResponseModel",
529
555
  '500': None,
530
556
  }
531
557
  response_data = self.api_client.call_api(
@@ -535,9 +561,10 @@ class ClustersApi:
535
561
  return response_data.response
536
562
 
537
563
 
538
- def _delete_a_cluster_serialize(
564
+ def _create_node_serialize(
539
565
  self,
540
- id,
566
+ cluster_id,
567
+ payload,
541
568
  _request_auth,
542
569
  _content_type,
543
570
  _headers,
@@ -559,12 +586,14 @@ class ClustersApi:
559
586
  _body_params: Optional[bytes] = None
560
587
 
561
588
  # process the path parameters
562
- if id is not None:
563
- _path_params['id'] = id
589
+ if cluster_id is not None:
590
+ _path_params['cluster_id'] = cluster_id
564
591
  # process the query parameters
565
592
  # process the header parameters
566
593
  # process the form parameters
567
594
  # process the body parameter
595
+ if payload is not None:
596
+ _body_params = payload
568
597
 
569
598
 
570
599
  # set the HTTP header `Accept`
@@ -575,16 +604,28 @@ class ClustersApi:
575
604
  ]
576
605
  )
577
606
 
607
+ # set the HTTP header `Content-Type`
608
+ if _content_type:
609
+ _header_params['Content-Type'] = _content_type
610
+ else:
611
+ _default_content_type = (
612
+ self.api_client.select_header_content_type(
613
+ [
614
+ 'application/json'
615
+ ]
616
+ )
617
+ )
618
+ if _default_content_type is not None:
619
+ _header_params['Content-Type'] = _default_content_type
578
620
 
579
621
  # authentication setting
580
622
  _auth_settings: List[str] = [
581
- 'apiKey',
582
- 'accessToken'
623
+ 'apiKey'
583
624
  ]
584
625
 
585
626
  return self.api_client.param_serialize(
586
- method='DELETE',
587
- resource_path='/core/clusters/{id}',
627
+ method='POST',
628
+ resource_path='/core/clusters/{cluster_id}/nodes',
588
629
  path_params=_path_params,
589
630
  query_params=_query_params,
590
631
  header_params=_header_params,
@@ -601,9 +642,10 @@ class ClustersApi:
601
642
 
602
643
 
603
644
  @validate_call
604
- def fetch_cluster_name_availability(
645
+ def create_node_group(
605
646
  self,
606
- name: StrictStr,
647
+ cluster_id: StrictInt,
648
+ payload: CreateClusterNodeGroupPayload,
607
649
  _request_timeout: Union[
608
650
  None,
609
651
  Annotated[StrictFloat, Field(gt=0)],
@@ -616,13 +658,14 @@ class ClustersApi:
616
658
  _content_type: Optional[StrictStr] = None,
617
659
  _headers: Optional[Dict[StrictStr, Any]] = None,
618
660
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
619
- ) -> NameAvailableModel:
620
- """Fetch cluster name availability
661
+ ) -> ClusterNodeGroupsCreateResponse:
662
+ """Create a node group in a cluster
621
663
 
622
- Check if a Cluster name is available
623
664
 
624
- :param name: (required)
625
- :type name: str
665
+ :param cluster_id: (required)
666
+ :type cluster_id: int
667
+ :param payload: (required)
668
+ :type payload: CreateClusterNodeGroupPayload
626
669
  :param _request_timeout: timeout setting for this request. If one
627
670
  number provided, it will be total request
628
671
  timeout. It can also be a pair (tuple) of
@@ -645,8 +688,9 @@ class ClustersApi:
645
688
  :return: Returns the result object.
646
689
  """ # noqa: E501
647
690
 
648
- _param = self._fetch_cluster_name_availability_serialize(
649
- name=name,
691
+ _param = self._create_node_group_serialize(
692
+ cluster_id=cluster_id,
693
+ payload=payload,
650
694
  _request_auth=_request_auth,
651
695
  _content_type=_content_type,
652
696
  _headers=_headers,
@@ -654,10 +698,11 @@ class ClustersApi:
654
698
  )
655
699
 
656
700
  _response_types_map: Dict[str, Optional[str]] = {
657
- '200': "NameAvailableModel",
701
+ '201': "ClusterNodeGroupsCreateResponse",
658
702
  '400': "ErrorResponseModel",
659
703
  '401': "ErrorResponseModel",
660
704
  '404': "ErrorResponseModel",
705
+ '409': "ErrorResponseModel",
661
706
  '500': None,
662
707
  }
663
708
  response_data = self.api_client.call_api(
@@ -672,9 +717,10 @@ class ClustersApi:
672
717
 
673
718
 
674
719
  @validate_call
675
- def fetch_cluster_name_availability_with_http_info(
720
+ def create_node_group_with_http_info(
676
721
  self,
677
- name: StrictStr,
722
+ cluster_id: StrictInt,
723
+ payload: CreateClusterNodeGroupPayload,
678
724
  _request_timeout: Union[
679
725
  None,
680
726
  Annotated[StrictFloat, Field(gt=0)],
@@ -687,13 +733,14 @@ class ClustersApi:
687
733
  _content_type: Optional[StrictStr] = None,
688
734
  _headers: Optional[Dict[StrictStr, Any]] = None,
689
735
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
690
- ) -> ApiResponse[NameAvailableModel]:
691
- """Fetch cluster name availability
736
+ ) -> ApiResponse[ClusterNodeGroupsCreateResponse]:
737
+ """Create a node group in a cluster
692
738
 
693
- Check if a Cluster name is available
694
739
 
695
- :param name: (required)
696
- :type name: str
740
+ :param cluster_id: (required)
741
+ :type cluster_id: int
742
+ :param payload: (required)
743
+ :type payload: CreateClusterNodeGroupPayload
697
744
  :param _request_timeout: timeout setting for this request. If one
698
745
  number provided, it will be total request
699
746
  timeout. It can also be a pair (tuple) of
@@ -716,8 +763,9 @@ class ClustersApi:
716
763
  :return: Returns the result object.
717
764
  """ # noqa: E501
718
765
 
719
- _param = self._fetch_cluster_name_availability_serialize(
720
- name=name,
766
+ _param = self._create_node_group_serialize(
767
+ cluster_id=cluster_id,
768
+ payload=payload,
721
769
  _request_auth=_request_auth,
722
770
  _content_type=_content_type,
723
771
  _headers=_headers,
@@ -725,10 +773,11 @@ class ClustersApi:
725
773
  )
726
774
 
727
775
  _response_types_map: Dict[str, Optional[str]] = {
728
- '200': "NameAvailableModel",
776
+ '201': "ClusterNodeGroupsCreateResponse",
729
777
  '400': "ErrorResponseModel",
730
778
  '401': "ErrorResponseModel",
731
779
  '404': "ErrorResponseModel",
780
+ '409': "ErrorResponseModel",
732
781
  '500': None,
733
782
  }
734
783
  response_data = self.api_client.call_api(
@@ -743,9 +792,10 @@ class ClustersApi:
743
792
 
744
793
 
745
794
  @validate_call
746
- def fetch_cluster_name_availability_without_preload_content(
795
+ def create_node_group_without_preload_content(
747
796
  self,
748
- name: StrictStr,
797
+ cluster_id: StrictInt,
798
+ payload: CreateClusterNodeGroupPayload,
749
799
  _request_timeout: Union[
750
800
  None,
751
801
  Annotated[StrictFloat, Field(gt=0)],
@@ -759,12 +809,13 @@ class ClustersApi:
759
809
  _headers: Optional[Dict[StrictStr, Any]] = None,
760
810
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
761
811
  ) -> RESTResponseType:
762
- """Fetch cluster name availability
812
+ """Create a node group in a cluster
763
813
 
764
- Check if a Cluster name is available
765
814
 
766
- :param name: (required)
767
- :type name: str
815
+ :param cluster_id: (required)
816
+ :type cluster_id: int
817
+ :param payload: (required)
818
+ :type payload: CreateClusterNodeGroupPayload
768
819
  :param _request_timeout: timeout setting for this request. If one
769
820
  number provided, it will be total request
770
821
  timeout. It can also be a pair (tuple) of
@@ -787,8 +838,9 @@ class ClustersApi:
787
838
  :return: Returns the result object.
788
839
  """ # noqa: E501
789
840
 
790
- _param = self._fetch_cluster_name_availability_serialize(
791
- name=name,
841
+ _param = self._create_node_group_serialize(
842
+ cluster_id=cluster_id,
843
+ payload=payload,
792
844
  _request_auth=_request_auth,
793
845
  _content_type=_content_type,
794
846
  _headers=_headers,
@@ -796,10 +848,11 @@ class ClustersApi:
796
848
  )
797
849
 
798
850
  _response_types_map: Dict[str, Optional[str]] = {
799
- '200': "NameAvailableModel",
851
+ '201': "ClusterNodeGroupsCreateResponse",
800
852
  '400': "ErrorResponseModel",
801
853
  '401': "ErrorResponseModel",
802
854
  '404': "ErrorResponseModel",
855
+ '409': "ErrorResponseModel",
803
856
  '500': None,
804
857
  }
805
858
  response_data = self.api_client.call_api(
@@ -809,9 +862,10 @@ class ClustersApi:
809
862
  return response_data.response
810
863
 
811
864
 
812
- def _fetch_cluster_name_availability_serialize(
865
+ def _create_node_group_serialize(
813
866
  self,
814
- name,
867
+ cluster_id,
868
+ payload,
815
869
  _request_auth,
816
870
  _content_type,
817
871
  _headers,
@@ -833,12 +887,14 @@ class ClustersApi:
833
887
  _body_params: Optional[bytes] = None
834
888
 
835
889
  # process the path parameters
836
- if name is not None:
837
- _path_params['name'] = name
890
+ if cluster_id is not None:
891
+ _path_params['cluster_id'] = cluster_id
838
892
  # process the query parameters
839
893
  # process the header parameters
840
894
  # process the form parameters
841
895
  # process the body parameter
896
+ if payload is not None:
897
+ _body_params = payload
842
898
 
843
899
 
844
900
  # set the HTTP header `Accept`
@@ -849,16 +905,28 @@ class ClustersApi:
849
905
  ]
850
906
  )
851
907
 
908
+ # set the HTTP header `Content-Type`
909
+ if _content_type:
910
+ _header_params['Content-Type'] = _content_type
911
+ else:
912
+ _default_content_type = (
913
+ self.api_client.select_header_content_type(
914
+ [
915
+ 'application/json'
916
+ ]
917
+ )
918
+ )
919
+ if _default_content_type is not None:
920
+ _header_params['Content-Type'] = _default_content_type
852
921
 
853
922
  # authentication setting
854
923
  _auth_settings: List[str] = [
855
- 'apiKey',
856
- 'accessToken'
924
+ 'apiKey'
857
925
  ]
858
926
 
859
927
  return self.api_client.param_serialize(
860
- method='GET',
861
- resource_path='/core/clusters/name-availability/{name}',
928
+ method='POST',
929
+ resource_path='/core/clusters/{cluster_id}/node-groups',
862
930
  path_params=_path_params,
863
931
  query_params=_query_params,
864
932
  header_params=_header_params,
@@ -875,8 +943,9 @@ class ClustersApi:
875
943
 
876
944
 
877
945
  @validate_call
878
- def get_cluster_versions(
946
+ def delete_a_cluster(
879
947
  self,
948
+ id: StrictInt,
880
949
  _request_timeout: Union[
881
950
  None,
882
951
  Annotated[StrictFloat, Field(gt=0)],
@@ -889,10 +958,12 @@ class ClustersApi:
889
958
  _content_type: Optional[StrictStr] = None,
890
959
  _headers: Optional[Dict[StrictStr, Any]] = None,
891
960
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
892
- ) -> ClusterVersions:
893
- """GET Cluster Versions
961
+ ) -> ResponseModel:
962
+ """Delete a cluster
894
963
 
895
964
 
965
+ :param id: (required)
966
+ :type id: int
896
967
  :param _request_timeout: timeout setting for this request. If one
897
968
  number provided, it will be total request
898
969
  timeout. It can also be a pair (tuple) of
@@ -915,7 +986,8 @@ class ClustersApi:
915
986
  :return: Returns the result object.
916
987
  """ # noqa: E501
917
988
 
918
- _param = self._get_cluster_versions_serialize(
989
+ _param = self._delete_a_cluster_serialize(
990
+ id=id,
919
991
  _request_auth=_request_auth,
920
992
  _content_type=_content_type,
921
993
  _headers=_headers,
@@ -923,9 +995,10 @@ class ClustersApi:
923
995
  )
924
996
 
925
997
  _response_types_map: Dict[str, Optional[str]] = {
926
- '200': "ClusterVersions",
998
+ '200': "ResponseModel",
927
999
  '400': "ErrorResponseModel",
928
1000
  '401': "ErrorResponseModel",
1001
+ '404': "ErrorResponseModel",
929
1002
  '500': None,
930
1003
  }
931
1004
  response_data = self.api_client.call_api(
@@ -940,8 +1013,9 @@ class ClustersApi:
940
1013
 
941
1014
 
942
1015
  @validate_call
943
- def get_cluster_versions_with_http_info(
1016
+ def delete_a_cluster_with_http_info(
944
1017
  self,
1018
+ id: StrictInt,
945
1019
  _request_timeout: Union[
946
1020
  None,
947
1021
  Annotated[StrictFloat, Field(gt=0)],
@@ -954,10 +1028,12 @@ class ClustersApi:
954
1028
  _content_type: Optional[StrictStr] = None,
955
1029
  _headers: Optional[Dict[StrictStr, Any]] = None,
956
1030
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
957
- ) -> ApiResponse[ClusterVersions]:
958
- """GET Cluster Versions
1031
+ ) -> ApiResponse[ResponseModel]:
1032
+ """Delete a cluster
959
1033
 
960
1034
 
1035
+ :param id: (required)
1036
+ :type id: int
961
1037
  :param _request_timeout: timeout setting for this request. If one
962
1038
  number provided, it will be total request
963
1039
  timeout. It can also be a pair (tuple) of
@@ -980,7 +1056,8 @@ class ClustersApi:
980
1056
  :return: Returns the result object.
981
1057
  """ # noqa: E501
982
1058
 
983
- _param = self._get_cluster_versions_serialize(
1059
+ _param = self._delete_a_cluster_serialize(
1060
+ id=id,
984
1061
  _request_auth=_request_auth,
985
1062
  _content_type=_content_type,
986
1063
  _headers=_headers,
@@ -988,9 +1065,10 @@ class ClustersApi:
988
1065
  )
989
1066
 
990
1067
  _response_types_map: Dict[str, Optional[str]] = {
991
- '200': "ClusterVersions",
1068
+ '200': "ResponseModel",
992
1069
  '400': "ErrorResponseModel",
993
1070
  '401': "ErrorResponseModel",
1071
+ '404': "ErrorResponseModel",
994
1072
  '500': None,
995
1073
  }
996
1074
  response_data = self.api_client.call_api(
@@ -1005,8 +1083,9 @@ class ClustersApi:
1005
1083
 
1006
1084
 
1007
1085
  @validate_call
1008
- def get_cluster_versions_without_preload_content(
1086
+ def delete_a_cluster_without_preload_content(
1009
1087
  self,
1088
+ id: StrictInt,
1010
1089
  _request_timeout: Union[
1011
1090
  None,
1012
1091
  Annotated[StrictFloat, Field(gt=0)],
@@ -1020,9 +1099,11 @@ class ClustersApi:
1020
1099
  _headers: Optional[Dict[StrictStr, Any]] = None,
1021
1100
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1022
1101
  ) -> RESTResponseType:
1023
- """GET Cluster Versions
1102
+ """Delete a cluster
1024
1103
 
1025
1104
 
1105
+ :param id: (required)
1106
+ :type id: int
1026
1107
  :param _request_timeout: timeout setting for this request. If one
1027
1108
  number provided, it will be total request
1028
1109
  timeout. It can also be a pair (tuple) of
@@ -1045,7 +1126,8 @@ class ClustersApi:
1045
1126
  :return: Returns the result object.
1046
1127
  """ # noqa: E501
1047
1128
 
1048
- _param = self._get_cluster_versions_serialize(
1129
+ _param = self._delete_a_cluster_serialize(
1130
+ id=id,
1049
1131
  _request_auth=_request_auth,
1050
1132
  _content_type=_content_type,
1051
1133
  _headers=_headers,
@@ -1053,9 +1135,10 @@ class ClustersApi:
1053
1135
  )
1054
1136
 
1055
1137
  _response_types_map: Dict[str, Optional[str]] = {
1056
- '200': "ClusterVersions",
1138
+ '200': "ResponseModel",
1057
1139
  '400': "ErrorResponseModel",
1058
1140
  '401': "ErrorResponseModel",
1141
+ '404': "ErrorResponseModel",
1059
1142
  '500': None,
1060
1143
  }
1061
1144
  response_data = self.api_client.call_api(
@@ -1065,8 +1148,9 @@ class ClustersApi:
1065
1148
  return response_data.response
1066
1149
 
1067
1150
 
1068
- def _get_cluster_versions_serialize(
1151
+ def _delete_a_cluster_serialize(
1069
1152
  self,
1153
+ id,
1070
1154
  _request_auth,
1071
1155
  _content_type,
1072
1156
  _headers,
@@ -1088,6 +1172,8 @@ class ClustersApi:
1088
1172
  _body_params: Optional[bytes] = None
1089
1173
 
1090
1174
  # process the path parameters
1175
+ if id is not None:
1176
+ _path_params['id'] = id
1091
1177
  # process the query parameters
1092
1178
  # process the header parameters
1093
1179
  # process the form parameters
@@ -1105,13 +1191,12 @@ class ClustersApi:
1105
1191
 
1106
1192
  # authentication setting
1107
1193
  _auth_settings: List[str] = [
1108
- 'apiKey',
1109
- 'accessToken'
1194
+ 'apiKey'
1110
1195
  ]
1111
1196
 
1112
1197
  return self.api_client.param_serialize(
1113
- method='GET',
1114
- resource_path='/core/clusters/versions',
1198
+ method='DELETE',
1199
+ resource_path='/core/clusters/{id}',
1115
1200
  path_params=_path_params,
1116
1201
  query_params=_query_params,
1117
1202
  header_params=_header_params,
@@ -1128,9 +1213,10 @@ class ClustersApi:
1128
1213
 
1129
1214
 
1130
1215
  @validate_call
1131
- def getting_cluster_detail(
1216
+ def delete_a_node_group(
1132
1217
  self,
1133
- id: StrictInt,
1218
+ cluster_id: StrictInt,
1219
+ node_group_id: StrictInt,
1134
1220
  _request_timeout: Union[
1135
1221
  None,
1136
1222
  Annotated[StrictFloat, Field(gt=0)],
@@ -1143,12 +1229,14 @@ class ClustersApi:
1143
1229
  _content_type: Optional[StrictStr] = None,
1144
1230
  _headers: Optional[Dict[StrictStr, Any]] = None,
1145
1231
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1146
- ) -> ClusterResponse:
1147
- """Getting Cluster Detail
1232
+ ) -> ResponseModel:
1233
+ """Delete a node group
1148
1234
 
1149
1235
 
1150
- :param id: (required)
1151
- :type id: int
1236
+ :param cluster_id: (required)
1237
+ :type cluster_id: int
1238
+ :param node_group_id: (required)
1239
+ :type node_group_id: int
1152
1240
  :param _request_timeout: timeout setting for this request. If one
1153
1241
  number provided, it will be total request
1154
1242
  timeout. It can also be a pair (tuple) of
@@ -1171,8 +1259,9 @@ class ClustersApi:
1171
1259
  :return: Returns the result object.
1172
1260
  """ # noqa: E501
1173
1261
 
1174
- _param = self._getting_cluster_detail_serialize(
1175
- id=id,
1262
+ _param = self._delete_a_node_group_serialize(
1263
+ cluster_id=cluster_id,
1264
+ node_group_id=node_group_id,
1176
1265
  _request_auth=_request_auth,
1177
1266
  _content_type=_content_type,
1178
1267
  _headers=_headers,
@@ -1180,10 +1269,11 @@ class ClustersApi:
1180
1269
  )
1181
1270
 
1182
1271
  _response_types_map: Dict[str, Optional[str]] = {
1183
- '200': "ClusterResponse",
1272
+ '200': "ResponseModel",
1184
1273
  '400': "ErrorResponseModel",
1185
1274
  '401': "ErrorResponseModel",
1186
1275
  '404': "ErrorResponseModel",
1276
+ '409': "ErrorResponseModel",
1187
1277
  '500': None,
1188
1278
  }
1189
1279
  response_data = self.api_client.call_api(
@@ -1198,9 +1288,10 @@ class ClustersApi:
1198
1288
 
1199
1289
 
1200
1290
  @validate_call
1201
- def getting_cluster_detail_with_http_info(
1291
+ def delete_a_node_group_with_http_info(
1202
1292
  self,
1203
- id: StrictInt,
1293
+ cluster_id: StrictInt,
1294
+ node_group_id: StrictInt,
1204
1295
  _request_timeout: Union[
1205
1296
  None,
1206
1297
  Annotated[StrictFloat, Field(gt=0)],
@@ -1213,12 +1304,14 @@ class ClustersApi:
1213
1304
  _content_type: Optional[StrictStr] = None,
1214
1305
  _headers: Optional[Dict[StrictStr, Any]] = None,
1215
1306
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1216
- ) -> ApiResponse[ClusterResponse]:
1217
- """Getting Cluster Detail
1307
+ ) -> ApiResponse[ResponseModel]:
1308
+ """Delete a node group
1218
1309
 
1219
1310
 
1220
- :param id: (required)
1221
- :type id: int
1311
+ :param cluster_id: (required)
1312
+ :type cluster_id: int
1313
+ :param node_group_id: (required)
1314
+ :type node_group_id: int
1222
1315
  :param _request_timeout: timeout setting for this request. If one
1223
1316
  number provided, it will be total request
1224
1317
  timeout. It can also be a pair (tuple) of
@@ -1241,8 +1334,9 @@ class ClustersApi:
1241
1334
  :return: Returns the result object.
1242
1335
  """ # noqa: E501
1243
1336
 
1244
- _param = self._getting_cluster_detail_serialize(
1245
- id=id,
1337
+ _param = self._delete_a_node_group_serialize(
1338
+ cluster_id=cluster_id,
1339
+ node_group_id=node_group_id,
1246
1340
  _request_auth=_request_auth,
1247
1341
  _content_type=_content_type,
1248
1342
  _headers=_headers,
@@ -1250,10 +1344,11 @@ class ClustersApi:
1250
1344
  )
1251
1345
 
1252
1346
  _response_types_map: Dict[str, Optional[str]] = {
1253
- '200': "ClusterResponse",
1347
+ '200': "ResponseModel",
1254
1348
  '400': "ErrorResponseModel",
1255
1349
  '401': "ErrorResponseModel",
1256
1350
  '404': "ErrorResponseModel",
1351
+ '409': "ErrorResponseModel",
1257
1352
  '500': None,
1258
1353
  }
1259
1354
  response_data = self.api_client.call_api(
@@ -1268,9 +1363,10 @@ class ClustersApi:
1268
1363
 
1269
1364
 
1270
1365
  @validate_call
1271
- def getting_cluster_detail_without_preload_content(
1366
+ def delete_a_node_group_without_preload_content(
1272
1367
  self,
1273
- id: StrictInt,
1368
+ cluster_id: StrictInt,
1369
+ node_group_id: StrictInt,
1274
1370
  _request_timeout: Union[
1275
1371
  None,
1276
1372
  Annotated[StrictFloat, Field(gt=0)],
@@ -1284,11 +1380,13 @@ class ClustersApi:
1284
1380
  _headers: Optional[Dict[StrictStr, Any]] = None,
1285
1381
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1286
1382
  ) -> RESTResponseType:
1287
- """Getting Cluster Detail
1383
+ """Delete a node group
1288
1384
 
1289
1385
 
1290
- :param id: (required)
1291
- :type id: int
1386
+ :param cluster_id: (required)
1387
+ :type cluster_id: int
1388
+ :param node_group_id: (required)
1389
+ :type node_group_id: int
1292
1390
  :param _request_timeout: timeout setting for this request. If one
1293
1391
  number provided, it will be total request
1294
1392
  timeout. It can also be a pair (tuple) of
@@ -1311,8 +1409,9 @@ class ClustersApi:
1311
1409
  :return: Returns the result object.
1312
1410
  """ # noqa: E501
1313
1411
 
1314
- _param = self._getting_cluster_detail_serialize(
1315
- id=id,
1412
+ _param = self._delete_a_node_group_serialize(
1413
+ cluster_id=cluster_id,
1414
+ node_group_id=node_group_id,
1316
1415
  _request_auth=_request_auth,
1317
1416
  _content_type=_content_type,
1318
1417
  _headers=_headers,
@@ -1320,10 +1419,11 @@ class ClustersApi:
1320
1419
  )
1321
1420
 
1322
1421
  _response_types_map: Dict[str, Optional[str]] = {
1323
- '200': "ClusterResponse",
1422
+ '200': "ResponseModel",
1324
1423
  '400': "ErrorResponseModel",
1325
1424
  '401': "ErrorResponseModel",
1326
1425
  '404': "ErrorResponseModel",
1426
+ '409': "ErrorResponseModel",
1327
1427
  '500': None,
1328
1428
  }
1329
1429
  response_data = self.api_client.call_api(
@@ -1333,9 +1433,10 @@ class ClustersApi:
1333
1433
  return response_data.response
1334
1434
 
1335
1435
 
1336
- def _getting_cluster_detail_serialize(
1436
+ def _delete_a_node_group_serialize(
1337
1437
  self,
1338
- id,
1438
+ cluster_id,
1439
+ node_group_id,
1339
1440
  _request_auth,
1340
1441
  _content_type,
1341
1442
  _headers,
@@ -1357,8 +1458,10 @@ class ClustersApi:
1357
1458
  _body_params: Optional[bytes] = None
1358
1459
 
1359
1460
  # process the path parameters
1360
- if id is not None:
1361
- _path_params['id'] = id
1461
+ if cluster_id is not None:
1462
+ _path_params['cluster_id'] = cluster_id
1463
+ if node_group_id is not None:
1464
+ _path_params['node_group_id'] = node_group_id
1362
1465
  # process the query parameters
1363
1466
  # process the header parameters
1364
1467
  # process the form parameters
@@ -1376,13 +1479,12 @@ class ClustersApi:
1376
1479
 
1377
1480
  # authentication setting
1378
1481
  _auth_settings: List[str] = [
1379
- 'apiKey',
1380
- 'accessToken'
1482
+ 'apiKey'
1381
1483
  ]
1382
1484
 
1383
1485
  return self.api_client.param_serialize(
1384
- method='GET',
1385
- resource_path='/core/clusters/{id}',
1486
+ method='DELETE',
1487
+ resource_path='/core/clusters/{cluster_id}/node-groups/{node_group_id}',
1386
1488
  path_params=_path_params,
1387
1489
  query_params=_query_params,
1388
1490
  header_params=_header_params,
@@ -1399,8 +1501,10 @@ class ClustersApi:
1399
1501
 
1400
1502
 
1401
1503
  @validate_call
1402
- def list_clusters(
1504
+ def delete_cluster_node(
1403
1505
  self,
1506
+ cluster_id: StrictInt,
1507
+ node_id: StrictInt,
1404
1508
  _request_timeout: Union[
1405
1509
  None,
1406
1510
  Annotated[StrictFloat, Field(gt=0)],
@@ -1413,10 +1517,14 @@ class ClustersApi:
1413
1517
  _content_type: Optional[StrictStr] = None,
1414
1518
  _headers: Optional[Dict[StrictStr, Any]] = None,
1415
1519
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1416
- ) -> ClusterListResponse:
1417
- """List Clusters
1520
+ ) -> ResponseModel:
1521
+ """Delete Cluster Node
1418
1522
 
1419
1523
 
1524
+ :param cluster_id: (required)
1525
+ :type cluster_id: int
1526
+ :param node_id: (required)
1527
+ :type node_id: int
1420
1528
  :param _request_timeout: timeout setting for this request. If one
1421
1529
  number provided, it will be total request
1422
1530
  timeout. It can also be a pair (tuple) of
@@ -1439,7 +1547,9 @@ class ClustersApi:
1439
1547
  :return: Returns the result object.
1440
1548
  """ # noqa: E501
1441
1549
 
1442
- _param = self._list_clusters_serialize(
1550
+ _param = self._delete_cluster_node_serialize(
1551
+ cluster_id=cluster_id,
1552
+ node_id=node_id,
1443
1553
  _request_auth=_request_auth,
1444
1554
  _content_type=_content_type,
1445
1555
  _headers=_headers,
@@ -1447,9 +1557,10 @@ class ClustersApi:
1447
1557
  )
1448
1558
 
1449
1559
  _response_types_map: Dict[str, Optional[str]] = {
1450
- '200': "ClusterListResponse",
1560
+ '200': "ResponseModel",
1451
1561
  '400': "ErrorResponseModel",
1452
1562
  '401': "ErrorResponseModel",
1563
+ '404': "ErrorResponseModel",
1453
1564
  '500': None,
1454
1565
  }
1455
1566
  response_data = self.api_client.call_api(
@@ -1464,8 +1575,10 @@ class ClustersApi:
1464
1575
 
1465
1576
 
1466
1577
  @validate_call
1467
- def list_clusters_with_http_info(
1578
+ def delete_cluster_node_with_http_info(
1468
1579
  self,
1580
+ cluster_id: StrictInt,
1581
+ node_id: StrictInt,
1469
1582
  _request_timeout: Union[
1470
1583
  None,
1471
1584
  Annotated[StrictFloat, Field(gt=0)],
@@ -1478,10 +1591,14 @@ class ClustersApi:
1478
1591
  _content_type: Optional[StrictStr] = None,
1479
1592
  _headers: Optional[Dict[StrictStr, Any]] = None,
1480
1593
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1481
- ) -> ApiResponse[ClusterListResponse]:
1482
- """List Clusters
1594
+ ) -> ApiResponse[ResponseModel]:
1595
+ """Delete Cluster Node
1483
1596
 
1484
1597
 
1598
+ :param cluster_id: (required)
1599
+ :type cluster_id: int
1600
+ :param node_id: (required)
1601
+ :type node_id: int
1485
1602
  :param _request_timeout: timeout setting for this request. If one
1486
1603
  number provided, it will be total request
1487
1604
  timeout. It can also be a pair (tuple) of
@@ -1504,7 +1621,9 @@ class ClustersApi:
1504
1621
  :return: Returns the result object.
1505
1622
  """ # noqa: E501
1506
1623
 
1507
- _param = self._list_clusters_serialize(
1624
+ _param = self._delete_cluster_node_serialize(
1625
+ cluster_id=cluster_id,
1626
+ node_id=node_id,
1508
1627
  _request_auth=_request_auth,
1509
1628
  _content_type=_content_type,
1510
1629
  _headers=_headers,
@@ -1512,9 +1631,10 @@ class ClustersApi:
1512
1631
  )
1513
1632
 
1514
1633
  _response_types_map: Dict[str, Optional[str]] = {
1515
- '200': "ClusterListResponse",
1634
+ '200': "ResponseModel",
1516
1635
  '400': "ErrorResponseModel",
1517
1636
  '401': "ErrorResponseModel",
1637
+ '404': "ErrorResponseModel",
1518
1638
  '500': None,
1519
1639
  }
1520
1640
  response_data = self.api_client.call_api(
@@ -1529,8 +1649,10 @@ class ClustersApi:
1529
1649
 
1530
1650
 
1531
1651
  @validate_call
1532
- def list_clusters_without_preload_content(
1652
+ def delete_cluster_node_without_preload_content(
1533
1653
  self,
1654
+ cluster_id: StrictInt,
1655
+ node_id: StrictInt,
1534
1656
  _request_timeout: Union[
1535
1657
  None,
1536
1658
  Annotated[StrictFloat, Field(gt=0)],
@@ -1544,9 +1666,13 @@ class ClustersApi:
1544
1666
  _headers: Optional[Dict[StrictStr, Any]] = None,
1545
1667
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1546
1668
  ) -> RESTResponseType:
1547
- """List Clusters
1669
+ """Delete Cluster Node
1548
1670
 
1549
1671
 
1672
+ :param cluster_id: (required)
1673
+ :type cluster_id: int
1674
+ :param node_id: (required)
1675
+ :type node_id: int
1550
1676
  :param _request_timeout: timeout setting for this request. If one
1551
1677
  number provided, it will be total request
1552
1678
  timeout. It can also be a pair (tuple) of
@@ -1569,7 +1695,9 @@ class ClustersApi:
1569
1695
  :return: Returns the result object.
1570
1696
  """ # noqa: E501
1571
1697
 
1572
- _param = self._list_clusters_serialize(
1698
+ _param = self._delete_cluster_node_serialize(
1699
+ cluster_id=cluster_id,
1700
+ node_id=node_id,
1573
1701
  _request_auth=_request_auth,
1574
1702
  _content_type=_content_type,
1575
1703
  _headers=_headers,
@@ -1577,9 +1705,10 @@ class ClustersApi:
1577
1705
  )
1578
1706
 
1579
1707
  _response_types_map: Dict[str, Optional[str]] = {
1580
- '200': "ClusterListResponse",
1708
+ '200': "ResponseModel",
1581
1709
  '400': "ErrorResponseModel",
1582
1710
  '401': "ErrorResponseModel",
1711
+ '404': "ErrorResponseModel",
1583
1712
  '500': None,
1584
1713
  }
1585
1714
  response_data = self.api_client.call_api(
@@ -1589,8 +1718,10 @@ class ClustersApi:
1589
1718
  return response_data.response
1590
1719
 
1591
1720
 
1592
- def _list_clusters_serialize(
1721
+ def _delete_cluster_node_serialize(
1593
1722
  self,
1723
+ cluster_id,
1724
+ node_id,
1594
1725
  _request_auth,
1595
1726
  _content_type,
1596
1727
  _headers,
@@ -1612,6 +1743,10 @@ class ClustersApi:
1612
1743
  _body_params: Optional[bytes] = None
1613
1744
 
1614
1745
  # process the path parameters
1746
+ if cluster_id is not None:
1747
+ _path_params['cluster_id'] = cluster_id
1748
+ if node_id is not None:
1749
+ _path_params['node_id'] = node_id
1615
1750
  # process the query parameters
1616
1751
  # process the header parameters
1617
1752
  # process the form parameters
@@ -1629,13 +1764,2224 @@ class ClustersApi:
1629
1764
 
1630
1765
  # authentication setting
1631
1766
  _auth_settings: List[str] = [
1632
- 'apiKey',
1633
- 'accessToken'
1767
+ 'apiKey'
1634
1768
  ]
1635
1769
 
1636
1770
  return self.api_client.param_serialize(
1637
- method='GET',
1638
- resource_path='/core/clusters',
1771
+ method='DELETE',
1772
+ resource_path='/core/clusters/{cluster_id}/nodes/{node_id}',
1773
+ path_params=_path_params,
1774
+ query_params=_query_params,
1775
+ header_params=_header_params,
1776
+ body=_body_params,
1777
+ post_params=_form_params,
1778
+ files=_files,
1779
+ auth_settings=_auth_settings,
1780
+ collection_formats=_collection_formats,
1781
+ _host=_host,
1782
+ _request_auth=_request_auth
1783
+ )
1784
+
1785
+
1786
+
1787
+
1788
+ @validate_call
1789
+ def fetch_cluster_name_availability(
1790
+ self,
1791
+ name: StrictStr,
1792
+ _request_timeout: Union[
1793
+ None,
1794
+ Annotated[StrictFloat, Field(gt=0)],
1795
+ Tuple[
1796
+ Annotated[StrictFloat, Field(gt=0)],
1797
+ Annotated[StrictFloat, Field(gt=0)]
1798
+ ]
1799
+ ] = None,
1800
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1801
+ _content_type: Optional[StrictStr] = None,
1802
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1803
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1804
+ ) -> NameAvailableModel:
1805
+ """Fetch cluster name availability
1806
+
1807
+ Check if a Cluster name is available
1808
+
1809
+ :param name: (required)
1810
+ :type name: str
1811
+ :param _request_timeout: timeout setting for this request. If one
1812
+ number provided, it will be total request
1813
+ timeout. It can also be a pair (tuple) of
1814
+ (connection, read) timeouts.
1815
+ :type _request_timeout: int, tuple(int, int), optional
1816
+ :param _request_auth: set to override the auth_settings for an a single
1817
+ request; this effectively ignores the
1818
+ authentication in the spec for a single request.
1819
+ :type _request_auth: dict, optional
1820
+ :param _content_type: force content-type for the request.
1821
+ :type _content_type: str, Optional
1822
+ :param _headers: set to override the headers for a single
1823
+ request; this effectively ignores the headers
1824
+ in the spec for a single request.
1825
+ :type _headers: dict, optional
1826
+ :param _host_index: set to override the host_index for a single
1827
+ request; this effectively ignores the host_index
1828
+ in the spec for a single request.
1829
+ :type _host_index: int, optional
1830
+ :return: Returns the result object.
1831
+ """ # noqa: E501
1832
+
1833
+ _param = self._fetch_cluster_name_availability_serialize(
1834
+ name=name,
1835
+ _request_auth=_request_auth,
1836
+ _content_type=_content_type,
1837
+ _headers=_headers,
1838
+ _host_index=_host_index
1839
+ )
1840
+
1841
+ _response_types_map: Dict[str, Optional[str]] = {
1842
+ '200': "NameAvailableModel",
1843
+ '400': "ErrorResponseModel",
1844
+ '401': "ErrorResponseModel",
1845
+ '404': "ErrorResponseModel",
1846
+ '500': None,
1847
+ }
1848
+ response_data = self.api_client.call_api(
1849
+ *_param,
1850
+ _request_timeout=_request_timeout
1851
+ )
1852
+ response_data.read()
1853
+ return self.api_client.response_deserialize(
1854
+ response_data=response_data,
1855
+ response_types_map=_response_types_map,
1856
+ ).data
1857
+
1858
+
1859
+ @validate_call
1860
+ def fetch_cluster_name_availability_with_http_info(
1861
+ self,
1862
+ name: StrictStr,
1863
+ _request_timeout: Union[
1864
+ None,
1865
+ Annotated[StrictFloat, Field(gt=0)],
1866
+ Tuple[
1867
+ Annotated[StrictFloat, Field(gt=0)],
1868
+ Annotated[StrictFloat, Field(gt=0)]
1869
+ ]
1870
+ ] = None,
1871
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1872
+ _content_type: Optional[StrictStr] = None,
1873
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1874
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1875
+ ) -> ApiResponse[NameAvailableModel]:
1876
+ """Fetch cluster name availability
1877
+
1878
+ Check if a Cluster name is available
1879
+
1880
+ :param name: (required)
1881
+ :type name: str
1882
+ :param _request_timeout: timeout setting for this request. If one
1883
+ number provided, it will be total request
1884
+ timeout. It can also be a pair (tuple) of
1885
+ (connection, read) timeouts.
1886
+ :type _request_timeout: int, tuple(int, int), optional
1887
+ :param _request_auth: set to override the auth_settings for an a single
1888
+ request; this effectively ignores the
1889
+ authentication in the spec for a single request.
1890
+ :type _request_auth: dict, optional
1891
+ :param _content_type: force content-type for the request.
1892
+ :type _content_type: str, Optional
1893
+ :param _headers: set to override the headers for a single
1894
+ request; this effectively ignores the headers
1895
+ in the spec for a single request.
1896
+ :type _headers: dict, optional
1897
+ :param _host_index: set to override the host_index for a single
1898
+ request; this effectively ignores the host_index
1899
+ in the spec for a single request.
1900
+ :type _host_index: int, optional
1901
+ :return: Returns the result object.
1902
+ """ # noqa: E501
1903
+
1904
+ _param = self._fetch_cluster_name_availability_serialize(
1905
+ name=name,
1906
+ _request_auth=_request_auth,
1907
+ _content_type=_content_type,
1908
+ _headers=_headers,
1909
+ _host_index=_host_index
1910
+ )
1911
+
1912
+ _response_types_map: Dict[str, Optional[str]] = {
1913
+ '200': "NameAvailableModel",
1914
+ '400': "ErrorResponseModel",
1915
+ '401': "ErrorResponseModel",
1916
+ '404': "ErrorResponseModel",
1917
+ '500': None,
1918
+ }
1919
+ response_data = self.api_client.call_api(
1920
+ *_param,
1921
+ _request_timeout=_request_timeout
1922
+ )
1923
+ response_data.read()
1924
+ return self.api_client.response_deserialize(
1925
+ response_data=response_data,
1926
+ response_types_map=_response_types_map,
1927
+ )
1928
+
1929
+
1930
+ @validate_call
1931
+ def fetch_cluster_name_availability_without_preload_content(
1932
+ self,
1933
+ name: StrictStr,
1934
+ _request_timeout: Union[
1935
+ None,
1936
+ Annotated[StrictFloat, Field(gt=0)],
1937
+ Tuple[
1938
+ Annotated[StrictFloat, Field(gt=0)],
1939
+ Annotated[StrictFloat, Field(gt=0)]
1940
+ ]
1941
+ ] = None,
1942
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1943
+ _content_type: Optional[StrictStr] = None,
1944
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1945
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1946
+ ) -> RESTResponseType:
1947
+ """Fetch cluster name availability
1948
+
1949
+ Check if a Cluster name is available
1950
+
1951
+ :param name: (required)
1952
+ :type name: str
1953
+ :param _request_timeout: timeout setting for this request. If one
1954
+ number provided, it will be total request
1955
+ timeout. It can also be a pair (tuple) of
1956
+ (connection, read) timeouts.
1957
+ :type _request_timeout: int, tuple(int, int), optional
1958
+ :param _request_auth: set to override the auth_settings for an a single
1959
+ request; this effectively ignores the
1960
+ authentication in the spec for a single request.
1961
+ :type _request_auth: dict, optional
1962
+ :param _content_type: force content-type for the request.
1963
+ :type _content_type: str, Optional
1964
+ :param _headers: set to override the headers for a single
1965
+ request; this effectively ignores the headers
1966
+ in the spec for a single request.
1967
+ :type _headers: dict, optional
1968
+ :param _host_index: set to override the host_index for a single
1969
+ request; this effectively ignores the host_index
1970
+ in the spec for a single request.
1971
+ :type _host_index: int, optional
1972
+ :return: Returns the result object.
1973
+ """ # noqa: E501
1974
+
1975
+ _param = self._fetch_cluster_name_availability_serialize(
1976
+ name=name,
1977
+ _request_auth=_request_auth,
1978
+ _content_type=_content_type,
1979
+ _headers=_headers,
1980
+ _host_index=_host_index
1981
+ )
1982
+
1983
+ _response_types_map: Dict[str, Optional[str]] = {
1984
+ '200': "NameAvailableModel",
1985
+ '400': "ErrorResponseModel",
1986
+ '401': "ErrorResponseModel",
1987
+ '404': "ErrorResponseModel",
1988
+ '500': None,
1989
+ }
1990
+ response_data = self.api_client.call_api(
1991
+ *_param,
1992
+ _request_timeout=_request_timeout
1993
+ )
1994
+ return response_data.response
1995
+
1996
+
1997
+ def _fetch_cluster_name_availability_serialize(
1998
+ self,
1999
+ name,
2000
+ _request_auth,
2001
+ _content_type,
2002
+ _headers,
2003
+ _host_index,
2004
+ ) -> RequestSerialized:
2005
+
2006
+ _host = None
2007
+
2008
+ _collection_formats: Dict[str, str] = {
2009
+ }
2010
+
2011
+ _path_params: Dict[str, str] = {}
2012
+ _query_params: List[Tuple[str, str]] = []
2013
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2014
+ _form_params: List[Tuple[str, str]] = []
2015
+ _files: Dict[
2016
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2017
+ ] = {}
2018
+ _body_params: Optional[bytes] = None
2019
+
2020
+ # process the path parameters
2021
+ if name is not None:
2022
+ _path_params['name'] = name
2023
+ # process the query parameters
2024
+ # process the header parameters
2025
+ # process the form parameters
2026
+ # process the body parameter
2027
+
2028
+
2029
+ # set the HTTP header `Accept`
2030
+ if 'Accept' not in _header_params:
2031
+ _header_params['Accept'] = self.api_client.select_header_accept(
2032
+ [
2033
+ 'application/json'
2034
+ ]
2035
+ )
2036
+
2037
+
2038
+ # authentication setting
2039
+ _auth_settings: List[str] = [
2040
+ 'apiKey'
2041
+ ]
2042
+
2043
+ return self.api_client.param_serialize(
2044
+ method='GET',
2045
+ resource_path='/core/clusters/name-availability/{name}',
2046
+ path_params=_path_params,
2047
+ query_params=_query_params,
2048
+ header_params=_header_params,
2049
+ body=_body_params,
2050
+ post_params=_form_params,
2051
+ files=_files,
2052
+ auth_settings=_auth_settings,
2053
+ collection_formats=_collection_formats,
2054
+ _host=_host,
2055
+ _request_auth=_request_auth
2056
+ )
2057
+
2058
+
2059
+
2060
+
2061
+ @validate_call
2062
+ def get_cluster_master_flavors(
2063
+ self,
2064
+ _request_timeout: Union[
2065
+ None,
2066
+ Annotated[StrictFloat, Field(gt=0)],
2067
+ Tuple[
2068
+ Annotated[StrictFloat, Field(gt=0)],
2069
+ Annotated[StrictFloat, Field(gt=0)]
2070
+ ]
2071
+ ] = None,
2072
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2073
+ _content_type: Optional[StrictStr] = None,
2074
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2075
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2076
+ ) -> MasterFlavorsResponse:
2077
+ """Get Cluster Master Flavors
2078
+
2079
+
2080
+ :param _request_timeout: timeout setting for this request. If one
2081
+ number provided, it will be total request
2082
+ timeout. It can also be a pair (tuple) of
2083
+ (connection, read) timeouts.
2084
+ :type _request_timeout: int, tuple(int, int), optional
2085
+ :param _request_auth: set to override the auth_settings for an a single
2086
+ request; this effectively ignores the
2087
+ authentication in the spec for a single request.
2088
+ :type _request_auth: dict, optional
2089
+ :param _content_type: force content-type for the request.
2090
+ :type _content_type: str, Optional
2091
+ :param _headers: set to override the headers for a single
2092
+ request; this effectively ignores the headers
2093
+ in the spec for a single request.
2094
+ :type _headers: dict, optional
2095
+ :param _host_index: set to override the host_index for a single
2096
+ request; this effectively ignores the host_index
2097
+ in the spec for a single request.
2098
+ :type _host_index: int, optional
2099
+ :return: Returns the result object.
2100
+ """ # noqa: E501
2101
+
2102
+ _param = self._get_cluster_master_flavors_serialize(
2103
+ _request_auth=_request_auth,
2104
+ _content_type=_content_type,
2105
+ _headers=_headers,
2106
+ _host_index=_host_index
2107
+ )
2108
+
2109
+ _response_types_map: Dict[str, Optional[str]] = {
2110
+ '200': "MasterFlavorsResponse",
2111
+ '400': "ErrorResponseModel",
2112
+ '401': "ErrorResponseModel",
2113
+ '500': None,
2114
+ }
2115
+ response_data = self.api_client.call_api(
2116
+ *_param,
2117
+ _request_timeout=_request_timeout
2118
+ )
2119
+ response_data.read()
2120
+ return self.api_client.response_deserialize(
2121
+ response_data=response_data,
2122
+ response_types_map=_response_types_map,
2123
+ ).data
2124
+
2125
+
2126
+ @validate_call
2127
+ def get_cluster_master_flavors_with_http_info(
2128
+ self,
2129
+ _request_timeout: Union[
2130
+ None,
2131
+ Annotated[StrictFloat, Field(gt=0)],
2132
+ Tuple[
2133
+ Annotated[StrictFloat, Field(gt=0)],
2134
+ Annotated[StrictFloat, Field(gt=0)]
2135
+ ]
2136
+ ] = None,
2137
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2138
+ _content_type: Optional[StrictStr] = None,
2139
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2140
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2141
+ ) -> ApiResponse[MasterFlavorsResponse]:
2142
+ """Get Cluster Master Flavors
2143
+
2144
+
2145
+ :param _request_timeout: timeout setting for this request. If one
2146
+ number provided, it will be total request
2147
+ timeout. It can also be a pair (tuple) of
2148
+ (connection, read) timeouts.
2149
+ :type _request_timeout: int, tuple(int, int), optional
2150
+ :param _request_auth: set to override the auth_settings for an a single
2151
+ request; this effectively ignores the
2152
+ authentication in the spec for a single request.
2153
+ :type _request_auth: dict, optional
2154
+ :param _content_type: force content-type for the request.
2155
+ :type _content_type: str, Optional
2156
+ :param _headers: set to override the headers for a single
2157
+ request; this effectively ignores the headers
2158
+ in the spec for a single request.
2159
+ :type _headers: dict, optional
2160
+ :param _host_index: set to override the host_index for a single
2161
+ request; this effectively ignores the host_index
2162
+ in the spec for a single request.
2163
+ :type _host_index: int, optional
2164
+ :return: Returns the result object.
2165
+ """ # noqa: E501
2166
+
2167
+ _param = self._get_cluster_master_flavors_serialize(
2168
+ _request_auth=_request_auth,
2169
+ _content_type=_content_type,
2170
+ _headers=_headers,
2171
+ _host_index=_host_index
2172
+ )
2173
+
2174
+ _response_types_map: Dict[str, Optional[str]] = {
2175
+ '200': "MasterFlavorsResponse",
2176
+ '400': "ErrorResponseModel",
2177
+ '401': "ErrorResponseModel",
2178
+ '500': None,
2179
+ }
2180
+ response_data = self.api_client.call_api(
2181
+ *_param,
2182
+ _request_timeout=_request_timeout
2183
+ )
2184
+ response_data.read()
2185
+ return self.api_client.response_deserialize(
2186
+ response_data=response_data,
2187
+ response_types_map=_response_types_map,
2188
+ )
2189
+
2190
+
2191
+ @validate_call
2192
+ def get_cluster_master_flavors_without_preload_content(
2193
+ self,
2194
+ _request_timeout: Union[
2195
+ None,
2196
+ Annotated[StrictFloat, Field(gt=0)],
2197
+ Tuple[
2198
+ Annotated[StrictFloat, Field(gt=0)],
2199
+ Annotated[StrictFloat, Field(gt=0)]
2200
+ ]
2201
+ ] = None,
2202
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2203
+ _content_type: Optional[StrictStr] = None,
2204
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2205
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2206
+ ) -> RESTResponseType:
2207
+ """Get Cluster Master Flavors
2208
+
2209
+
2210
+ :param _request_timeout: timeout setting for this request. If one
2211
+ number provided, it will be total request
2212
+ timeout. It can also be a pair (tuple) of
2213
+ (connection, read) timeouts.
2214
+ :type _request_timeout: int, tuple(int, int), optional
2215
+ :param _request_auth: set to override the auth_settings for an a single
2216
+ request; this effectively ignores the
2217
+ authentication in the spec for a single request.
2218
+ :type _request_auth: dict, optional
2219
+ :param _content_type: force content-type for the request.
2220
+ :type _content_type: str, Optional
2221
+ :param _headers: set to override the headers for a single
2222
+ request; this effectively ignores the headers
2223
+ in the spec for a single request.
2224
+ :type _headers: dict, optional
2225
+ :param _host_index: set to override the host_index for a single
2226
+ request; this effectively ignores the host_index
2227
+ in the spec for a single request.
2228
+ :type _host_index: int, optional
2229
+ :return: Returns the result object.
2230
+ """ # noqa: E501
2231
+
2232
+ _param = self._get_cluster_master_flavors_serialize(
2233
+ _request_auth=_request_auth,
2234
+ _content_type=_content_type,
2235
+ _headers=_headers,
2236
+ _host_index=_host_index
2237
+ )
2238
+
2239
+ _response_types_map: Dict[str, Optional[str]] = {
2240
+ '200': "MasterFlavorsResponse",
2241
+ '400': "ErrorResponseModel",
2242
+ '401': "ErrorResponseModel",
2243
+ '500': None,
2244
+ }
2245
+ response_data = self.api_client.call_api(
2246
+ *_param,
2247
+ _request_timeout=_request_timeout
2248
+ )
2249
+ return response_data.response
2250
+
2251
+
2252
+ def _get_cluster_master_flavors_serialize(
2253
+ self,
2254
+ _request_auth,
2255
+ _content_type,
2256
+ _headers,
2257
+ _host_index,
2258
+ ) -> RequestSerialized:
2259
+
2260
+ _host = None
2261
+
2262
+ _collection_formats: Dict[str, str] = {
2263
+ }
2264
+
2265
+ _path_params: Dict[str, str] = {}
2266
+ _query_params: List[Tuple[str, str]] = []
2267
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2268
+ _form_params: List[Tuple[str, str]] = []
2269
+ _files: Dict[
2270
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2271
+ ] = {}
2272
+ _body_params: Optional[bytes] = None
2273
+
2274
+ # process the path parameters
2275
+ # process the query parameters
2276
+ # process the header parameters
2277
+ # process the form parameters
2278
+ # process the body parameter
2279
+
2280
+
2281
+ # set the HTTP header `Accept`
2282
+ if 'Accept' not in _header_params:
2283
+ _header_params['Accept'] = self.api_client.select_header_accept(
2284
+ [
2285
+ 'application/json'
2286
+ ]
2287
+ )
2288
+
2289
+
2290
+ # authentication setting
2291
+ _auth_settings: List[str] = [
2292
+ 'apiKey'
2293
+ ]
2294
+
2295
+ return self.api_client.param_serialize(
2296
+ method='GET',
2297
+ resource_path='/core/clusters/master-flavors',
2298
+ path_params=_path_params,
2299
+ query_params=_query_params,
2300
+ header_params=_header_params,
2301
+ body=_body_params,
2302
+ post_params=_form_params,
2303
+ files=_files,
2304
+ auth_settings=_auth_settings,
2305
+ collection_formats=_collection_formats,
2306
+ _host=_host,
2307
+ _request_auth=_request_auth
2308
+ )
2309
+
2310
+
2311
+
2312
+
2313
+ @validate_call
2314
+ def get_cluster_nodes(
2315
+ self,
2316
+ cluster_id: StrictInt,
2317
+ _request_timeout: Union[
2318
+ None,
2319
+ Annotated[StrictFloat, Field(gt=0)],
2320
+ Tuple[
2321
+ Annotated[StrictFloat, Field(gt=0)],
2322
+ Annotated[StrictFloat, Field(gt=0)]
2323
+ ]
2324
+ ] = None,
2325
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2326
+ _content_type: Optional[StrictStr] = None,
2327
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2328
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2329
+ ) -> ClusterNodesListResponse:
2330
+ """Get Cluster Nodes
2331
+
2332
+
2333
+ :param cluster_id: (required)
2334
+ :type cluster_id: int
2335
+ :param _request_timeout: timeout setting for this request. If one
2336
+ number provided, it will be total request
2337
+ timeout. It can also be a pair (tuple) of
2338
+ (connection, read) timeouts.
2339
+ :type _request_timeout: int, tuple(int, int), optional
2340
+ :param _request_auth: set to override the auth_settings for an a single
2341
+ request; this effectively ignores the
2342
+ authentication in the spec for a single request.
2343
+ :type _request_auth: dict, optional
2344
+ :param _content_type: force content-type for the request.
2345
+ :type _content_type: str, Optional
2346
+ :param _headers: set to override the headers for a single
2347
+ request; this effectively ignores the headers
2348
+ in the spec for a single request.
2349
+ :type _headers: dict, optional
2350
+ :param _host_index: set to override the host_index for a single
2351
+ request; this effectively ignores the host_index
2352
+ in the spec for a single request.
2353
+ :type _host_index: int, optional
2354
+ :return: Returns the result object.
2355
+ """ # noqa: E501
2356
+
2357
+ _param = self._get_cluster_nodes_serialize(
2358
+ cluster_id=cluster_id,
2359
+ _request_auth=_request_auth,
2360
+ _content_type=_content_type,
2361
+ _headers=_headers,
2362
+ _host_index=_host_index
2363
+ )
2364
+
2365
+ _response_types_map: Dict[str, Optional[str]] = {
2366
+ '200': "ClusterNodesListResponse",
2367
+ '400': "ErrorResponseModel",
2368
+ '401': "ErrorResponseModel",
2369
+ '404': "ErrorResponseModel",
2370
+ '500': None,
2371
+ }
2372
+ response_data = self.api_client.call_api(
2373
+ *_param,
2374
+ _request_timeout=_request_timeout
2375
+ )
2376
+ response_data.read()
2377
+ return self.api_client.response_deserialize(
2378
+ response_data=response_data,
2379
+ response_types_map=_response_types_map,
2380
+ ).data
2381
+
2382
+
2383
+ @validate_call
2384
+ def get_cluster_nodes_with_http_info(
2385
+ self,
2386
+ cluster_id: StrictInt,
2387
+ _request_timeout: Union[
2388
+ None,
2389
+ Annotated[StrictFloat, Field(gt=0)],
2390
+ Tuple[
2391
+ Annotated[StrictFloat, Field(gt=0)],
2392
+ Annotated[StrictFloat, Field(gt=0)]
2393
+ ]
2394
+ ] = None,
2395
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2396
+ _content_type: Optional[StrictStr] = None,
2397
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2398
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2399
+ ) -> ApiResponse[ClusterNodesListResponse]:
2400
+ """Get Cluster Nodes
2401
+
2402
+
2403
+ :param cluster_id: (required)
2404
+ :type cluster_id: int
2405
+ :param _request_timeout: timeout setting for this request. If one
2406
+ number provided, it will be total request
2407
+ timeout. It can also be a pair (tuple) of
2408
+ (connection, read) timeouts.
2409
+ :type _request_timeout: int, tuple(int, int), optional
2410
+ :param _request_auth: set to override the auth_settings for an a single
2411
+ request; this effectively ignores the
2412
+ authentication in the spec for a single request.
2413
+ :type _request_auth: dict, optional
2414
+ :param _content_type: force content-type for the request.
2415
+ :type _content_type: str, Optional
2416
+ :param _headers: set to override the headers for a single
2417
+ request; this effectively ignores the headers
2418
+ in the spec for a single request.
2419
+ :type _headers: dict, optional
2420
+ :param _host_index: set to override the host_index for a single
2421
+ request; this effectively ignores the host_index
2422
+ in the spec for a single request.
2423
+ :type _host_index: int, optional
2424
+ :return: Returns the result object.
2425
+ """ # noqa: E501
2426
+
2427
+ _param = self._get_cluster_nodes_serialize(
2428
+ cluster_id=cluster_id,
2429
+ _request_auth=_request_auth,
2430
+ _content_type=_content_type,
2431
+ _headers=_headers,
2432
+ _host_index=_host_index
2433
+ )
2434
+
2435
+ _response_types_map: Dict[str, Optional[str]] = {
2436
+ '200': "ClusterNodesListResponse",
2437
+ '400': "ErrorResponseModel",
2438
+ '401': "ErrorResponseModel",
2439
+ '404': "ErrorResponseModel",
2440
+ '500': None,
2441
+ }
2442
+ response_data = self.api_client.call_api(
2443
+ *_param,
2444
+ _request_timeout=_request_timeout
2445
+ )
2446
+ response_data.read()
2447
+ return self.api_client.response_deserialize(
2448
+ response_data=response_data,
2449
+ response_types_map=_response_types_map,
2450
+ )
2451
+
2452
+
2453
+ @validate_call
2454
+ def get_cluster_nodes_without_preload_content(
2455
+ self,
2456
+ cluster_id: StrictInt,
2457
+ _request_timeout: Union[
2458
+ None,
2459
+ Annotated[StrictFloat, Field(gt=0)],
2460
+ Tuple[
2461
+ Annotated[StrictFloat, Field(gt=0)],
2462
+ Annotated[StrictFloat, Field(gt=0)]
2463
+ ]
2464
+ ] = None,
2465
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2466
+ _content_type: Optional[StrictStr] = None,
2467
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2468
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2469
+ ) -> RESTResponseType:
2470
+ """Get Cluster Nodes
2471
+
2472
+
2473
+ :param cluster_id: (required)
2474
+ :type cluster_id: int
2475
+ :param _request_timeout: timeout setting for this request. If one
2476
+ number provided, it will be total request
2477
+ timeout. It can also be a pair (tuple) of
2478
+ (connection, read) timeouts.
2479
+ :type _request_timeout: int, tuple(int, int), optional
2480
+ :param _request_auth: set to override the auth_settings for an a single
2481
+ request; this effectively ignores the
2482
+ authentication in the spec for a single request.
2483
+ :type _request_auth: dict, optional
2484
+ :param _content_type: force content-type for the request.
2485
+ :type _content_type: str, Optional
2486
+ :param _headers: set to override the headers for a single
2487
+ request; this effectively ignores the headers
2488
+ in the spec for a single request.
2489
+ :type _headers: dict, optional
2490
+ :param _host_index: set to override the host_index for a single
2491
+ request; this effectively ignores the host_index
2492
+ in the spec for a single request.
2493
+ :type _host_index: int, optional
2494
+ :return: Returns the result object.
2495
+ """ # noqa: E501
2496
+
2497
+ _param = self._get_cluster_nodes_serialize(
2498
+ cluster_id=cluster_id,
2499
+ _request_auth=_request_auth,
2500
+ _content_type=_content_type,
2501
+ _headers=_headers,
2502
+ _host_index=_host_index
2503
+ )
2504
+
2505
+ _response_types_map: Dict[str, Optional[str]] = {
2506
+ '200': "ClusterNodesListResponse",
2507
+ '400': "ErrorResponseModel",
2508
+ '401': "ErrorResponseModel",
2509
+ '404': "ErrorResponseModel",
2510
+ '500': None,
2511
+ }
2512
+ response_data = self.api_client.call_api(
2513
+ *_param,
2514
+ _request_timeout=_request_timeout
2515
+ )
2516
+ return response_data.response
2517
+
2518
+
2519
+ def _get_cluster_nodes_serialize(
2520
+ self,
2521
+ cluster_id,
2522
+ _request_auth,
2523
+ _content_type,
2524
+ _headers,
2525
+ _host_index,
2526
+ ) -> RequestSerialized:
2527
+
2528
+ _host = None
2529
+
2530
+ _collection_formats: Dict[str, str] = {
2531
+ }
2532
+
2533
+ _path_params: Dict[str, str] = {}
2534
+ _query_params: List[Tuple[str, str]] = []
2535
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2536
+ _form_params: List[Tuple[str, str]] = []
2537
+ _files: Dict[
2538
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2539
+ ] = {}
2540
+ _body_params: Optional[bytes] = None
2541
+
2542
+ # process the path parameters
2543
+ if cluster_id is not None:
2544
+ _path_params['cluster_id'] = cluster_id
2545
+ # process the query parameters
2546
+ # process the header parameters
2547
+ # process the form parameters
2548
+ # process the body parameter
2549
+
2550
+
2551
+ # set the HTTP header `Accept`
2552
+ if 'Accept' not in _header_params:
2553
+ _header_params['Accept'] = self.api_client.select_header_accept(
2554
+ [
2555
+ 'application/json'
2556
+ ]
2557
+ )
2558
+
2559
+
2560
+ # authentication setting
2561
+ _auth_settings: List[str] = [
2562
+ 'apiKey'
2563
+ ]
2564
+
2565
+ return self.api_client.param_serialize(
2566
+ method='GET',
2567
+ resource_path='/core/clusters/{cluster_id}/nodes',
2568
+ path_params=_path_params,
2569
+ query_params=_query_params,
2570
+ header_params=_header_params,
2571
+ body=_body_params,
2572
+ post_params=_form_params,
2573
+ files=_files,
2574
+ auth_settings=_auth_settings,
2575
+ collection_formats=_collection_formats,
2576
+ _host=_host,
2577
+ _request_auth=_request_auth
2578
+ )
2579
+
2580
+
2581
+
2582
+
2583
+ @validate_call
2584
+ def get_cluster_versions(
2585
+ self,
2586
+ region: Annotated[Optional[StrictStr], Field(description="Filter versions by region name (optional)")] = None,
2587
+ _request_timeout: Union[
2588
+ None,
2589
+ Annotated[StrictFloat, Field(gt=0)],
2590
+ Tuple[
2591
+ Annotated[StrictFloat, Field(gt=0)],
2592
+ Annotated[StrictFloat, Field(gt=0)]
2593
+ ]
2594
+ ] = None,
2595
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2596
+ _content_type: Optional[StrictStr] = None,
2597
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2598
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2599
+ ) -> ClusterVersions:
2600
+ """List Cluster Versions
2601
+
2602
+ Lists available Kubernetes versions, optionally filtered by region.
2603
+
2604
+ :param region: Filter versions by region name (optional)
2605
+ :type region: str
2606
+ :param _request_timeout: timeout setting for this request. If one
2607
+ number provided, it will be total request
2608
+ timeout. It can also be a pair (tuple) of
2609
+ (connection, read) timeouts.
2610
+ :type _request_timeout: int, tuple(int, int), optional
2611
+ :param _request_auth: set to override the auth_settings for an a single
2612
+ request; this effectively ignores the
2613
+ authentication in the spec for a single request.
2614
+ :type _request_auth: dict, optional
2615
+ :param _content_type: force content-type for the request.
2616
+ :type _content_type: str, Optional
2617
+ :param _headers: set to override the headers for a single
2618
+ request; this effectively ignores the headers
2619
+ in the spec for a single request.
2620
+ :type _headers: dict, optional
2621
+ :param _host_index: set to override the host_index for a single
2622
+ request; this effectively ignores the host_index
2623
+ in the spec for a single request.
2624
+ :type _host_index: int, optional
2625
+ :return: Returns the result object.
2626
+ """ # noqa: E501
2627
+
2628
+ _param = self._get_cluster_versions_serialize(
2629
+ region=region,
2630
+ _request_auth=_request_auth,
2631
+ _content_type=_content_type,
2632
+ _headers=_headers,
2633
+ _host_index=_host_index
2634
+ )
2635
+
2636
+ _response_types_map: Dict[str, Optional[str]] = {
2637
+ '200': "ClusterVersions",
2638
+ '400': "ErrorResponseModel",
2639
+ '401': "ErrorResponseModel",
2640
+ '500': None,
2641
+ }
2642
+ response_data = self.api_client.call_api(
2643
+ *_param,
2644
+ _request_timeout=_request_timeout
2645
+ )
2646
+ response_data.read()
2647
+ return self.api_client.response_deserialize(
2648
+ response_data=response_data,
2649
+ response_types_map=_response_types_map,
2650
+ ).data
2651
+
2652
+
2653
+ @validate_call
2654
+ def get_cluster_versions_with_http_info(
2655
+ self,
2656
+ region: Annotated[Optional[StrictStr], Field(description="Filter versions by region name (optional)")] = None,
2657
+ _request_timeout: Union[
2658
+ None,
2659
+ Annotated[StrictFloat, Field(gt=0)],
2660
+ Tuple[
2661
+ Annotated[StrictFloat, Field(gt=0)],
2662
+ Annotated[StrictFloat, Field(gt=0)]
2663
+ ]
2664
+ ] = None,
2665
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2666
+ _content_type: Optional[StrictStr] = None,
2667
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2668
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2669
+ ) -> ApiResponse[ClusterVersions]:
2670
+ """List Cluster Versions
2671
+
2672
+ Lists available Kubernetes versions, optionally filtered by region.
2673
+
2674
+ :param region: Filter versions by region name (optional)
2675
+ :type region: str
2676
+ :param _request_timeout: timeout setting for this request. If one
2677
+ number provided, it will be total request
2678
+ timeout. It can also be a pair (tuple) of
2679
+ (connection, read) timeouts.
2680
+ :type _request_timeout: int, tuple(int, int), optional
2681
+ :param _request_auth: set to override the auth_settings for an a single
2682
+ request; this effectively ignores the
2683
+ authentication in the spec for a single request.
2684
+ :type _request_auth: dict, optional
2685
+ :param _content_type: force content-type for the request.
2686
+ :type _content_type: str, Optional
2687
+ :param _headers: set to override the headers for a single
2688
+ request; this effectively ignores the headers
2689
+ in the spec for a single request.
2690
+ :type _headers: dict, optional
2691
+ :param _host_index: set to override the host_index for a single
2692
+ request; this effectively ignores the host_index
2693
+ in the spec for a single request.
2694
+ :type _host_index: int, optional
2695
+ :return: Returns the result object.
2696
+ """ # noqa: E501
2697
+
2698
+ _param = self._get_cluster_versions_serialize(
2699
+ region=region,
2700
+ _request_auth=_request_auth,
2701
+ _content_type=_content_type,
2702
+ _headers=_headers,
2703
+ _host_index=_host_index
2704
+ )
2705
+
2706
+ _response_types_map: Dict[str, Optional[str]] = {
2707
+ '200': "ClusterVersions",
2708
+ '400': "ErrorResponseModel",
2709
+ '401': "ErrorResponseModel",
2710
+ '500': None,
2711
+ }
2712
+ response_data = self.api_client.call_api(
2713
+ *_param,
2714
+ _request_timeout=_request_timeout
2715
+ )
2716
+ response_data.read()
2717
+ return self.api_client.response_deserialize(
2718
+ response_data=response_data,
2719
+ response_types_map=_response_types_map,
2720
+ )
2721
+
2722
+
2723
+ @validate_call
2724
+ def get_cluster_versions_without_preload_content(
2725
+ self,
2726
+ region: Annotated[Optional[StrictStr], Field(description="Filter versions by region name (optional)")] = None,
2727
+ _request_timeout: Union[
2728
+ None,
2729
+ Annotated[StrictFloat, Field(gt=0)],
2730
+ Tuple[
2731
+ Annotated[StrictFloat, Field(gt=0)],
2732
+ Annotated[StrictFloat, Field(gt=0)]
2733
+ ]
2734
+ ] = None,
2735
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2736
+ _content_type: Optional[StrictStr] = None,
2737
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2738
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2739
+ ) -> RESTResponseType:
2740
+ """List Cluster Versions
2741
+
2742
+ Lists available Kubernetes versions, optionally filtered by region.
2743
+
2744
+ :param region: Filter versions by region name (optional)
2745
+ :type region: str
2746
+ :param _request_timeout: timeout setting for this request. If one
2747
+ number provided, it will be total request
2748
+ timeout. It can also be a pair (tuple) of
2749
+ (connection, read) timeouts.
2750
+ :type _request_timeout: int, tuple(int, int), optional
2751
+ :param _request_auth: set to override the auth_settings for an a single
2752
+ request; this effectively ignores the
2753
+ authentication in the spec for a single request.
2754
+ :type _request_auth: dict, optional
2755
+ :param _content_type: force content-type for the request.
2756
+ :type _content_type: str, Optional
2757
+ :param _headers: set to override the headers for a single
2758
+ request; this effectively ignores the headers
2759
+ in the spec for a single request.
2760
+ :type _headers: dict, optional
2761
+ :param _host_index: set to override the host_index for a single
2762
+ request; this effectively ignores the host_index
2763
+ in the spec for a single request.
2764
+ :type _host_index: int, optional
2765
+ :return: Returns the result object.
2766
+ """ # noqa: E501
2767
+
2768
+ _param = self._get_cluster_versions_serialize(
2769
+ region=region,
2770
+ _request_auth=_request_auth,
2771
+ _content_type=_content_type,
2772
+ _headers=_headers,
2773
+ _host_index=_host_index
2774
+ )
2775
+
2776
+ _response_types_map: Dict[str, Optional[str]] = {
2777
+ '200': "ClusterVersions",
2778
+ '400': "ErrorResponseModel",
2779
+ '401': "ErrorResponseModel",
2780
+ '500': None,
2781
+ }
2782
+ response_data = self.api_client.call_api(
2783
+ *_param,
2784
+ _request_timeout=_request_timeout
2785
+ )
2786
+ return response_data.response
2787
+
2788
+
2789
+ def _get_cluster_versions_serialize(
2790
+ self,
2791
+ region,
2792
+ _request_auth,
2793
+ _content_type,
2794
+ _headers,
2795
+ _host_index,
2796
+ ) -> RequestSerialized:
2797
+
2798
+ _host = None
2799
+
2800
+ _collection_formats: Dict[str, str] = {
2801
+ }
2802
+
2803
+ _path_params: Dict[str, str] = {}
2804
+ _query_params: List[Tuple[str, str]] = []
2805
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2806
+ _form_params: List[Tuple[str, str]] = []
2807
+ _files: Dict[
2808
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2809
+ ] = {}
2810
+ _body_params: Optional[bytes] = None
2811
+
2812
+ # process the path parameters
2813
+ # process the query parameters
2814
+ if region is not None:
2815
+
2816
+ _query_params.append(('region', region))
2817
+
2818
+ # process the header parameters
2819
+ # process the form parameters
2820
+ # process the body parameter
2821
+
2822
+
2823
+ # set the HTTP header `Accept`
2824
+ if 'Accept' not in _header_params:
2825
+ _header_params['Accept'] = self.api_client.select_header_accept(
2826
+ [
2827
+ 'application/json'
2828
+ ]
2829
+ )
2830
+
2831
+
2832
+ # authentication setting
2833
+ _auth_settings: List[str] = [
2834
+ 'apiKey'
2835
+ ]
2836
+
2837
+ return self.api_client.param_serialize(
2838
+ method='GET',
2839
+ resource_path='/core/clusters/versions',
2840
+ path_params=_path_params,
2841
+ query_params=_query_params,
2842
+ header_params=_header_params,
2843
+ body=_body_params,
2844
+ post_params=_form_params,
2845
+ files=_files,
2846
+ auth_settings=_auth_settings,
2847
+ collection_formats=_collection_formats,
2848
+ _host=_host,
2849
+ _request_auth=_request_auth
2850
+ )
2851
+
2852
+
2853
+
2854
+
2855
+ @validate_call
2856
+ def getting_cluster_detail(
2857
+ self,
2858
+ id: StrictInt,
2859
+ _request_timeout: Union[
2860
+ None,
2861
+ Annotated[StrictFloat, Field(gt=0)],
2862
+ Tuple[
2863
+ Annotated[StrictFloat, Field(gt=0)],
2864
+ Annotated[StrictFloat, Field(gt=0)]
2865
+ ]
2866
+ ] = None,
2867
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2868
+ _content_type: Optional[StrictStr] = None,
2869
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2870
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2871
+ ) -> ClusterResponse:
2872
+ """Getting Cluster Detail
2873
+
2874
+
2875
+ :param id: (required)
2876
+ :type id: int
2877
+ :param _request_timeout: timeout setting for this request. If one
2878
+ number provided, it will be total request
2879
+ timeout. It can also be a pair (tuple) of
2880
+ (connection, read) timeouts.
2881
+ :type _request_timeout: int, tuple(int, int), optional
2882
+ :param _request_auth: set to override the auth_settings for an a single
2883
+ request; this effectively ignores the
2884
+ authentication in the spec for a single request.
2885
+ :type _request_auth: dict, optional
2886
+ :param _content_type: force content-type for the request.
2887
+ :type _content_type: str, Optional
2888
+ :param _headers: set to override the headers for a single
2889
+ request; this effectively ignores the headers
2890
+ in the spec for a single request.
2891
+ :type _headers: dict, optional
2892
+ :param _host_index: set to override the host_index for a single
2893
+ request; this effectively ignores the host_index
2894
+ in the spec for a single request.
2895
+ :type _host_index: int, optional
2896
+ :return: Returns the result object.
2897
+ """ # noqa: E501
2898
+
2899
+ _param = self._getting_cluster_detail_serialize(
2900
+ id=id,
2901
+ _request_auth=_request_auth,
2902
+ _content_type=_content_type,
2903
+ _headers=_headers,
2904
+ _host_index=_host_index
2905
+ )
2906
+
2907
+ _response_types_map: Dict[str, Optional[str]] = {
2908
+ '200': "ClusterResponse",
2909
+ '400': "ErrorResponseModel",
2910
+ '401': "ErrorResponseModel",
2911
+ '404': "ErrorResponseModel",
2912
+ '500': None,
2913
+ }
2914
+ response_data = self.api_client.call_api(
2915
+ *_param,
2916
+ _request_timeout=_request_timeout
2917
+ )
2918
+ response_data.read()
2919
+ return self.api_client.response_deserialize(
2920
+ response_data=response_data,
2921
+ response_types_map=_response_types_map,
2922
+ ).data
2923
+
2924
+
2925
+ @validate_call
2926
+ def getting_cluster_detail_with_http_info(
2927
+ self,
2928
+ id: StrictInt,
2929
+ _request_timeout: Union[
2930
+ None,
2931
+ Annotated[StrictFloat, Field(gt=0)],
2932
+ Tuple[
2933
+ Annotated[StrictFloat, Field(gt=0)],
2934
+ Annotated[StrictFloat, Field(gt=0)]
2935
+ ]
2936
+ ] = None,
2937
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2938
+ _content_type: Optional[StrictStr] = None,
2939
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2940
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2941
+ ) -> ApiResponse[ClusterResponse]:
2942
+ """Getting Cluster Detail
2943
+
2944
+
2945
+ :param id: (required)
2946
+ :type id: int
2947
+ :param _request_timeout: timeout setting for this request. If one
2948
+ number provided, it will be total request
2949
+ timeout. It can also be a pair (tuple) of
2950
+ (connection, read) timeouts.
2951
+ :type _request_timeout: int, tuple(int, int), optional
2952
+ :param _request_auth: set to override the auth_settings for an a single
2953
+ request; this effectively ignores the
2954
+ authentication in the spec for a single request.
2955
+ :type _request_auth: dict, optional
2956
+ :param _content_type: force content-type for the request.
2957
+ :type _content_type: str, Optional
2958
+ :param _headers: set to override the headers for a single
2959
+ request; this effectively ignores the headers
2960
+ in the spec for a single request.
2961
+ :type _headers: dict, optional
2962
+ :param _host_index: set to override the host_index for a single
2963
+ request; this effectively ignores the host_index
2964
+ in the spec for a single request.
2965
+ :type _host_index: int, optional
2966
+ :return: Returns the result object.
2967
+ """ # noqa: E501
2968
+
2969
+ _param = self._getting_cluster_detail_serialize(
2970
+ id=id,
2971
+ _request_auth=_request_auth,
2972
+ _content_type=_content_type,
2973
+ _headers=_headers,
2974
+ _host_index=_host_index
2975
+ )
2976
+
2977
+ _response_types_map: Dict[str, Optional[str]] = {
2978
+ '200': "ClusterResponse",
2979
+ '400': "ErrorResponseModel",
2980
+ '401': "ErrorResponseModel",
2981
+ '404': "ErrorResponseModel",
2982
+ '500': None,
2983
+ }
2984
+ response_data = self.api_client.call_api(
2985
+ *_param,
2986
+ _request_timeout=_request_timeout
2987
+ )
2988
+ response_data.read()
2989
+ return self.api_client.response_deserialize(
2990
+ response_data=response_data,
2991
+ response_types_map=_response_types_map,
2992
+ )
2993
+
2994
+
2995
+ @validate_call
2996
+ def getting_cluster_detail_without_preload_content(
2997
+ self,
2998
+ id: StrictInt,
2999
+ _request_timeout: Union[
3000
+ None,
3001
+ Annotated[StrictFloat, Field(gt=0)],
3002
+ Tuple[
3003
+ Annotated[StrictFloat, Field(gt=0)],
3004
+ Annotated[StrictFloat, Field(gt=0)]
3005
+ ]
3006
+ ] = None,
3007
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3008
+ _content_type: Optional[StrictStr] = None,
3009
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3010
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3011
+ ) -> RESTResponseType:
3012
+ """Getting Cluster Detail
3013
+
3014
+
3015
+ :param id: (required)
3016
+ :type id: int
3017
+ :param _request_timeout: timeout setting for this request. If one
3018
+ number provided, it will be total request
3019
+ timeout. It can also be a pair (tuple) of
3020
+ (connection, read) timeouts.
3021
+ :type _request_timeout: int, tuple(int, int), optional
3022
+ :param _request_auth: set to override the auth_settings for an a single
3023
+ request; this effectively ignores the
3024
+ authentication in the spec for a single request.
3025
+ :type _request_auth: dict, optional
3026
+ :param _content_type: force content-type for the request.
3027
+ :type _content_type: str, Optional
3028
+ :param _headers: set to override the headers for a single
3029
+ request; this effectively ignores the headers
3030
+ in the spec for a single request.
3031
+ :type _headers: dict, optional
3032
+ :param _host_index: set to override the host_index for a single
3033
+ request; this effectively ignores the host_index
3034
+ in the spec for a single request.
3035
+ :type _host_index: int, optional
3036
+ :return: Returns the result object.
3037
+ """ # noqa: E501
3038
+
3039
+ _param = self._getting_cluster_detail_serialize(
3040
+ id=id,
3041
+ _request_auth=_request_auth,
3042
+ _content_type=_content_type,
3043
+ _headers=_headers,
3044
+ _host_index=_host_index
3045
+ )
3046
+
3047
+ _response_types_map: Dict[str, Optional[str]] = {
3048
+ '200': "ClusterResponse",
3049
+ '400': "ErrorResponseModel",
3050
+ '401': "ErrorResponseModel",
3051
+ '404': "ErrorResponseModel",
3052
+ '500': None,
3053
+ }
3054
+ response_data = self.api_client.call_api(
3055
+ *_param,
3056
+ _request_timeout=_request_timeout
3057
+ )
3058
+ return response_data.response
3059
+
3060
+
3061
+ def _getting_cluster_detail_serialize(
3062
+ self,
3063
+ id,
3064
+ _request_auth,
3065
+ _content_type,
3066
+ _headers,
3067
+ _host_index,
3068
+ ) -> RequestSerialized:
3069
+
3070
+ _host = None
3071
+
3072
+ _collection_formats: Dict[str, str] = {
3073
+ }
3074
+
3075
+ _path_params: Dict[str, str] = {}
3076
+ _query_params: List[Tuple[str, str]] = []
3077
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3078
+ _form_params: List[Tuple[str, str]] = []
3079
+ _files: Dict[
3080
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3081
+ ] = {}
3082
+ _body_params: Optional[bytes] = None
3083
+
3084
+ # process the path parameters
3085
+ if id is not None:
3086
+ _path_params['id'] = id
3087
+ # process the query parameters
3088
+ # process the header parameters
3089
+ # process the form parameters
3090
+ # process the body parameter
3091
+
3092
+
3093
+ # set the HTTP header `Accept`
3094
+ if 'Accept' not in _header_params:
3095
+ _header_params['Accept'] = self.api_client.select_header_accept(
3096
+ [
3097
+ 'application/json'
3098
+ ]
3099
+ )
3100
+
3101
+
3102
+ # authentication setting
3103
+ _auth_settings: List[str] = [
3104
+ 'apiKey'
3105
+ ]
3106
+
3107
+ return self.api_client.param_serialize(
3108
+ method='GET',
3109
+ resource_path='/core/clusters/{id}',
3110
+ path_params=_path_params,
3111
+ query_params=_query_params,
3112
+ header_params=_header_params,
3113
+ body=_body_params,
3114
+ post_params=_form_params,
3115
+ files=_files,
3116
+ auth_settings=_auth_settings,
3117
+ collection_formats=_collection_formats,
3118
+ _host=_host,
3119
+ _request_auth=_request_auth
3120
+ )
3121
+
3122
+
3123
+
3124
+
3125
+ @validate_call
3126
+ def list_clusters(
3127
+ self,
3128
+ page: Annotated[Optional[StrictInt], Field(description="Page number for pagination")] = None,
3129
+ page_size: Annotated[Optional[StrictInt], Field(description="Number of items per page")] = None,
3130
+ environment: Annotated[Optional[StrictStr], Field(description="Environment Filter")] = None,
3131
+ search: Annotated[Optional[StrictStr], Field(description="Search query to filter cluster by name")] = None,
3132
+ _request_timeout: Union[
3133
+ None,
3134
+ Annotated[StrictFloat, Field(gt=0)],
3135
+ Tuple[
3136
+ Annotated[StrictFloat, Field(gt=0)],
3137
+ Annotated[StrictFloat, Field(gt=0)]
3138
+ ]
3139
+ ] = None,
3140
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3141
+ _content_type: Optional[StrictStr] = None,
3142
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3143
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3144
+ ) -> ClusterListResponse:
3145
+ """List Clusters
3146
+
3147
+
3148
+ :param page: Page number for pagination
3149
+ :type page: int
3150
+ :param page_size: Number of items per page
3151
+ :type page_size: int
3152
+ :param environment: Environment Filter
3153
+ :type environment: str
3154
+ :param search: Search query to filter cluster by name
3155
+ :type search: str
3156
+ :param _request_timeout: timeout setting for this request. If one
3157
+ number provided, it will be total request
3158
+ timeout. It can also be a pair (tuple) of
3159
+ (connection, read) timeouts.
3160
+ :type _request_timeout: int, tuple(int, int), optional
3161
+ :param _request_auth: set to override the auth_settings for an a single
3162
+ request; this effectively ignores the
3163
+ authentication in the spec for a single request.
3164
+ :type _request_auth: dict, optional
3165
+ :param _content_type: force content-type for the request.
3166
+ :type _content_type: str, Optional
3167
+ :param _headers: set to override the headers for a single
3168
+ request; this effectively ignores the headers
3169
+ in the spec for a single request.
3170
+ :type _headers: dict, optional
3171
+ :param _host_index: set to override the host_index for a single
3172
+ request; this effectively ignores the host_index
3173
+ in the spec for a single request.
3174
+ :type _host_index: int, optional
3175
+ :return: Returns the result object.
3176
+ """ # noqa: E501
3177
+
3178
+ _param = self._list_clusters_serialize(
3179
+ page=page,
3180
+ page_size=page_size,
3181
+ environment=environment,
3182
+ search=search,
3183
+ _request_auth=_request_auth,
3184
+ _content_type=_content_type,
3185
+ _headers=_headers,
3186
+ _host_index=_host_index
3187
+ )
3188
+
3189
+ _response_types_map: Dict[str, Optional[str]] = {
3190
+ '200': "ClusterListResponse",
3191
+ '400': "ErrorResponseModel",
3192
+ '401': "ErrorResponseModel",
3193
+ '500': None,
3194
+ }
3195
+ response_data = self.api_client.call_api(
3196
+ *_param,
3197
+ _request_timeout=_request_timeout
3198
+ )
3199
+ response_data.read()
3200
+ return self.api_client.response_deserialize(
3201
+ response_data=response_data,
3202
+ response_types_map=_response_types_map,
3203
+ ).data
3204
+
3205
+
3206
+ @validate_call
3207
+ def list_clusters_with_http_info(
3208
+ self,
3209
+ page: Annotated[Optional[StrictInt], Field(description="Page number for pagination")] = None,
3210
+ page_size: Annotated[Optional[StrictInt], Field(description="Number of items per page")] = None,
3211
+ environment: Annotated[Optional[StrictStr], Field(description="Environment Filter")] = None,
3212
+ search: Annotated[Optional[StrictStr], Field(description="Search query to filter cluster by name")] = None,
3213
+ _request_timeout: Union[
3214
+ None,
3215
+ Annotated[StrictFloat, Field(gt=0)],
3216
+ Tuple[
3217
+ Annotated[StrictFloat, Field(gt=0)],
3218
+ Annotated[StrictFloat, Field(gt=0)]
3219
+ ]
3220
+ ] = None,
3221
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3222
+ _content_type: Optional[StrictStr] = None,
3223
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3224
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3225
+ ) -> ApiResponse[ClusterListResponse]:
3226
+ """List Clusters
3227
+
3228
+
3229
+ :param page: Page number for pagination
3230
+ :type page: int
3231
+ :param page_size: Number of items per page
3232
+ :type page_size: int
3233
+ :param environment: Environment Filter
3234
+ :type environment: str
3235
+ :param search: Search query to filter cluster by name
3236
+ :type search: str
3237
+ :param _request_timeout: timeout setting for this request. If one
3238
+ number provided, it will be total request
3239
+ timeout. It can also be a pair (tuple) of
3240
+ (connection, read) timeouts.
3241
+ :type _request_timeout: int, tuple(int, int), optional
3242
+ :param _request_auth: set to override the auth_settings for an a single
3243
+ request; this effectively ignores the
3244
+ authentication in the spec for a single request.
3245
+ :type _request_auth: dict, optional
3246
+ :param _content_type: force content-type for the request.
3247
+ :type _content_type: str, Optional
3248
+ :param _headers: set to override the headers for a single
3249
+ request; this effectively ignores the headers
3250
+ in the spec for a single request.
3251
+ :type _headers: dict, optional
3252
+ :param _host_index: set to override the host_index for a single
3253
+ request; this effectively ignores the host_index
3254
+ in the spec for a single request.
3255
+ :type _host_index: int, optional
3256
+ :return: Returns the result object.
3257
+ """ # noqa: E501
3258
+
3259
+ _param = self._list_clusters_serialize(
3260
+ page=page,
3261
+ page_size=page_size,
3262
+ environment=environment,
3263
+ search=search,
3264
+ _request_auth=_request_auth,
3265
+ _content_type=_content_type,
3266
+ _headers=_headers,
3267
+ _host_index=_host_index
3268
+ )
3269
+
3270
+ _response_types_map: Dict[str, Optional[str]] = {
3271
+ '200': "ClusterListResponse",
3272
+ '400': "ErrorResponseModel",
3273
+ '401': "ErrorResponseModel",
3274
+ '500': None,
3275
+ }
3276
+ response_data = self.api_client.call_api(
3277
+ *_param,
3278
+ _request_timeout=_request_timeout
3279
+ )
3280
+ response_data.read()
3281
+ return self.api_client.response_deserialize(
3282
+ response_data=response_data,
3283
+ response_types_map=_response_types_map,
3284
+ )
3285
+
3286
+
3287
+ @validate_call
3288
+ def list_clusters_without_preload_content(
3289
+ self,
3290
+ page: Annotated[Optional[StrictInt], Field(description="Page number for pagination")] = None,
3291
+ page_size: Annotated[Optional[StrictInt], Field(description="Number of items per page")] = None,
3292
+ environment: Annotated[Optional[StrictStr], Field(description="Environment Filter")] = None,
3293
+ search: Annotated[Optional[StrictStr], Field(description="Search query to filter cluster by name")] = None,
3294
+ _request_timeout: Union[
3295
+ None,
3296
+ Annotated[StrictFloat, Field(gt=0)],
3297
+ Tuple[
3298
+ Annotated[StrictFloat, Field(gt=0)],
3299
+ Annotated[StrictFloat, Field(gt=0)]
3300
+ ]
3301
+ ] = None,
3302
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3303
+ _content_type: Optional[StrictStr] = None,
3304
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3305
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3306
+ ) -> RESTResponseType:
3307
+ """List Clusters
3308
+
3309
+
3310
+ :param page: Page number for pagination
3311
+ :type page: int
3312
+ :param page_size: Number of items per page
3313
+ :type page_size: int
3314
+ :param environment: Environment Filter
3315
+ :type environment: str
3316
+ :param search: Search query to filter cluster by name
3317
+ :type search: str
3318
+ :param _request_timeout: timeout setting for this request. If one
3319
+ number provided, it will be total request
3320
+ timeout. It can also be a pair (tuple) of
3321
+ (connection, read) timeouts.
3322
+ :type _request_timeout: int, tuple(int, int), optional
3323
+ :param _request_auth: set to override the auth_settings for an a single
3324
+ request; this effectively ignores the
3325
+ authentication in the spec for a single request.
3326
+ :type _request_auth: dict, optional
3327
+ :param _content_type: force content-type for the request.
3328
+ :type _content_type: str, Optional
3329
+ :param _headers: set to override the headers for a single
3330
+ request; this effectively ignores the headers
3331
+ in the spec for a single request.
3332
+ :type _headers: dict, optional
3333
+ :param _host_index: set to override the host_index for a single
3334
+ request; this effectively ignores the host_index
3335
+ in the spec for a single request.
3336
+ :type _host_index: int, optional
3337
+ :return: Returns the result object.
3338
+ """ # noqa: E501
3339
+
3340
+ _param = self._list_clusters_serialize(
3341
+ page=page,
3342
+ page_size=page_size,
3343
+ environment=environment,
3344
+ search=search,
3345
+ _request_auth=_request_auth,
3346
+ _content_type=_content_type,
3347
+ _headers=_headers,
3348
+ _host_index=_host_index
3349
+ )
3350
+
3351
+ _response_types_map: Dict[str, Optional[str]] = {
3352
+ '200': "ClusterListResponse",
3353
+ '400': "ErrorResponseModel",
3354
+ '401': "ErrorResponseModel",
3355
+ '500': None,
3356
+ }
3357
+ response_data = self.api_client.call_api(
3358
+ *_param,
3359
+ _request_timeout=_request_timeout
3360
+ )
3361
+ return response_data.response
3362
+
3363
+
3364
+ def _list_clusters_serialize(
3365
+ self,
3366
+ page,
3367
+ page_size,
3368
+ environment,
3369
+ search,
3370
+ _request_auth,
3371
+ _content_type,
3372
+ _headers,
3373
+ _host_index,
3374
+ ) -> RequestSerialized:
3375
+
3376
+ _host = None
3377
+
3378
+ _collection_formats: Dict[str, str] = {
3379
+ }
3380
+
3381
+ _path_params: Dict[str, str] = {}
3382
+ _query_params: List[Tuple[str, str]] = []
3383
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3384
+ _form_params: List[Tuple[str, str]] = []
3385
+ _files: Dict[
3386
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3387
+ ] = {}
3388
+ _body_params: Optional[bytes] = None
3389
+
3390
+ # process the path parameters
3391
+ # process the query parameters
3392
+ if page is not None:
3393
+
3394
+ _query_params.append(('page', page))
3395
+
3396
+ if page_size is not None:
3397
+
3398
+ _query_params.append(('pageSize', page_size))
3399
+
3400
+ if environment is not None:
3401
+
3402
+ _query_params.append(('environment', environment))
3403
+
3404
+ if search is not None:
3405
+
3406
+ _query_params.append(('search', search))
3407
+
3408
+ # process the header parameters
3409
+ # process the form parameters
3410
+ # process the body parameter
3411
+
3412
+
3413
+ # set the HTTP header `Accept`
3414
+ if 'Accept' not in _header_params:
3415
+ _header_params['Accept'] = self.api_client.select_header_accept(
3416
+ [
3417
+ 'application/json'
3418
+ ]
3419
+ )
3420
+
3421
+
3422
+ # authentication setting
3423
+ _auth_settings: List[str] = [
3424
+ 'apiKey'
3425
+ ]
3426
+
3427
+ return self.api_client.param_serialize(
3428
+ method='GET',
3429
+ resource_path='/core/clusters',
3430
+ path_params=_path_params,
3431
+ query_params=_query_params,
3432
+ header_params=_header_params,
3433
+ body=_body_params,
3434
+ post_params=_form_params,
3435
+ files=_files,
3436
+ auth_settings=_auth_settings,
3437
+ collection_formats=_collection_formats,
3438
+ _host=_host,
3439
+ _request_auth=_request_auth
3440
+ )
3441
+
3442
+
3443
+
3444
+
3445
+ @validate_call
3446
+ def list_node_groups(
3447
+ self,
3448
+ cluster_id: StrictInt,
3449
+ _request_timeout: Union[
3450
+ None,
3451
+ Annotated[StrictFloat, Field(gt=0)],
3452
+ Tuple[
3453
+ Annotated[StrictFloat, Field(gt=0)],
3454
+ Annotated[StrictFloat, Field(gt=0)]
3455
+ ]
3456
+ ] = None,
3457
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3458
+ _content_type: Optional[StrictStr] = None,
3459
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3460
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3461
+ ) -> ClusterNodeGroupsListResponse:
3462
+ """List node groups for a cluster
3463
+
3464
+
3465
+ :param cluster_id: (required)
3466
+ :type cluster_id: int
3467
+ :param _request_timeout: timeout setting for this request. If one
3468
+ number provided, it will be total request
3469
+ timeout. It can also be a pair (tuple) of
3470
+ (connection, read) timeouts.
3471
+ :type _request_timeout: int, tuple(int, int), optional
3472
+ :param _request_auth: set to override the auth_settings for an a single
3473
+ request; this effectively ignores the
3474
+ authentication in the spec for a single request.
3475
+ :type _request_auth: dict, optional
3476
+ :param _content_type: force content-type for the request.
3477
+ :type _content_type: str, Optional
3478
+ :param _headers: set to override the headers for a single
3479
+ request; this effectively ignores the headers
3480
+ in the spec for a single request.
3481
+ :type _headers: dict, optional
3482
+ :param _host_index: set to override the host_index for a single
3483
+ request; this effectively ignores the host_index
3484
+ in the spec for a single request.
3485
+ :type _host_index: int, optional
3486
+ :return: Returns the result object.
3487
+ """ # noqa: E501
3488
+
3489
+ _param = self._list_node_groups_serialize(
3490
+ cluster_id=cluster_id,
3491
+ _request_auth=_request_auth,
3492
+ _content_type=_content_type,
3493
+ _headers=_headers,
3494
+ _host_index=_host_index
3495
+ )
3496
+
3497
+ _response_types_map: Dict[str, Optional[str]] = {
3498
+ '200': "ClusterNodeGroupsListResponse",
3499
+ '400': "ErrorResponseModel",
3500
+ '401': "ErrorResponseModel",
3501
+ '404': "ErrorResponseModel",
3502
+ '500': None,
3503
+ }
3504
+ response_data = self.api_client.call_api(
3505
+ *_param,
3506
+ _request_timeout=_request_timeout
3507
+ )
3508
+ response_data.read()
3509
+ return self.api_client.response_deserialize(
3510
+ response_data=response_data,
3511
+ response_types_map=_response_types_map,
3512
+ ).data
3513
+
3514
+
3515
+ @validate_call
3516
+ def list_node_groups_with_http_info(
3517
+ self,
3518
+ cluster_id: StrictInt,
3519
+ _request_timeout: Union[
3520
+ None,
3521
+ Annotated[StrictFloat, Field(gt=0)],
3522
+ Tuple[
3523
+ Annotated[StrictFloat, Field(gt=0)],
3524
+ Annotated[StrictFloat, Field(gt=0)]
3525
+ ]
3526
+ ] = None,
3527
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3528
+ _content_type: Optional[StrictStr] = None,
3529
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3530
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3531
+ ) -> ApiResponse[ClusterNodeGroupsListResponse]:
3532
+ """List node groups for a cluster
3533
+
3534
+
3535
+ :param cluster_id: (required)
3536
+ :type cluster_id: int
3537
+ :param _request_timeout: timeout setting for this request. If one
3538
+ number provided, it will be total request
3539
+ timeout. It can also be a pair (tuple) of
3540
+ (connection, read) timeouts.
3541
+ :type _request_timeout: int, tuple(int, int), optional
3542
+ :param _request_auth: set to override the auth_settings for an a single
3543
+ request; this effectively ignores the
3544
+ authentication in the spec for a single request.
3545
+ :type _request_auth: dict, optional
3546
+ :param _content_type: force content-type for the request.
3547
+ :type _content_type: str, Optional
3548
+ :param _headers: set to override the headers for a single
3549
+ request; this effectively ignores the headers
3550
+ in the spec for a single request.
3551
+ :type _headers: dict, optional
3552
+ :param _host_index: set to override the host_index for a single
3553
+ request; this effectively ignores the host_index
3554
+ in the spec for a single request.
3555
+ :type _host_index: int, optional
3556
+ :return: Returns the result object.
3557
+ """ # noqa: E501
3558
+
3559
+ _param = self._list_node_groups_serialize(
3560
+ cluster_id=cluster_id,
3561
+ _request_auth=_request_auth,
3562
+ _content_type=_content_type,
3563
+ _headers=_headers,
3564
+ _host_index=_host_index
3565
+ )
3566
+
3567
+ _response_types_map: Dict[str, Optional[str]] = {
3568
+ '200': "ClusterNodeGroupsListResponse",
3569
+ '400': "ErrorResponseModel",
3570
+ '401': "ErrorResponseModel",
3571
+ '404': "ErrorResponseModel",
3572
+ '500': None,
3573
+ }
3574
+ response_data = self.api_client.call_api(
3575
+ *_param,
3576
+ _request_timeout=_request_timeout
3577
+ )
3578
+ response_data.read()
3579
+ return self.api_client.response_deserialize(
3580
+ response_data=response_data,
3581
+ response_types_map=_response_types_map,
3582
+ )
3583
+
3584
+
3585
+ @validate_call
3586
+ def list_node_groups_without_preload_content(
3587
+ self,
3588
+ cluster_id: StrictInt,
3589
+ _request_timeout: Union[
3590
+ None,
3591
+ Annotated[StrictFloat, Field(gt=0)],
3592
+ Tuple[
3593
+ Annotated[StrictFloat, Field(gt=0)],
3594
+ Annotated[StrictFloat, Field(gt=0)]
3595
+ ]
3596
+ ] = None,
3597
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3598
+ _content_type: Optional[StrictStr] = None,
3599
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3600
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3601
+ ) -> RESTResponseType:
3602
+ """List node groups for a cluster
3603
+
3604
+
3605
+ :param cluster_id: (required)
3606
+ :type cluster_id: int
3607
+ :param _request_timeout: timeout setting for this request. If one
3608
+ number provided, it will be total request
3609
+ timeout. It can also be a pair (tuple) of
3610
+ (connection, read) timeouts.
3611
+ :type _request_timeout: int, tuple(int, int), optional
3612
+ :param _request_auth: set to override the auth_settings for an a single
3613
+ request; this effectively ignores the
3614
+ authentication in the spec for a single request.
3615
+ :type _request_auth: dict, optional
3616
+ :param _content_type: force content-type for the request.
3617
+ :type _content_type: str, Optional
3618
+ :param _headers: set to override the headers for a single
3619
+ request; this effectively ignores the headers
3620
+ in the spec for a single request.
3621
+ :type _headers: dict, optional
3622
+ :param _host_index: set to override the host_index for a single
3623
+ request; this effectively ignores the host_index
3624
+ in the spec for a single request.
3625
+ :type _host_index: int, optional
3626
+ :return: Returns the result object.
3627
+ """ # noqa: E501
3628
+
3629
+ _param = self._list_node_groups_serialize(
3630
+ cluster_id=cluster_id,
3631
+ _request_auth=_request_auth,
3632
+ _content_type=_content_type,
3633
+ _headers=_headers,
3634
+ _host_index=_host_index
3635
+ )
3636
+
3637
+ _response_types_map: Dict[str, Optional[str]] = {
3638
+ '200': "ClusterNodeGroupsListResponse",
3639
+ '400': "ErrorResponseModel",
3640
+ '401': "ErrorResponseModel",
3641
+ '404': "ErrorResponseModel",
3642
+ '500': None,
3643
+ }
3644
+ response_data = self.api_client.call_api(
3645
+ *_param,
3646
+ _request_timeout=_request_timeout
3647
+ )
3648
+ return response_data.response
3649
+
3650
+
3651
+ def _list_node_groups_serialize(
3652
+ self,
3653
+ cluster_id,
3654
+ _request_auth,
3655
+ _content_type,
3656
+ _headers,
3657
+ _host_index,
3658
+ ) -> RequestSerialized:
3659
+
3660
+ _host = None
3661
+
3662
+ _collection_formats: Dict[str, str] = {
3663
+ }
3664
+
3665
+ _path_params: Dict[str, str] = {}
3666
+ _query_params: List[Tuple[str, str]] = []
3667
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3668
+ _form_params: List[Tuple[str, str]] = []
3669
+ _files: Dict[
3670
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3671
+ ] = {}
3672
+ _body_params: Optional[bytes] = None
3673
+
3674
+ # process the path parameters
3675
+ if cluster_id is not None:
3676
+ _path_params['cluster_id'] = cluster_id
3677
+ # process the query parameters
3678
+ # process the header parameters
3679
+ # process the form parameters
3680
+ # process the body parameter
3681
+
3682
+
3683
+ # set the HTTP header `Accept`
3684
+ if 'Accept' not in _header_params:
3685
+ _header_params['Accept'] = self.api_client.select_header_accept(
3686
+ [
3687
+ 'application/json'
3688
+ ]
3689
+ )
3690
+
3691
+
3692
+ # authentication setting
3693
+ _auth_settings: List[str] = [
3694
+ 'apiKey'
3695
+ ]
3696
+
3697
+ return self.api_client.param_serialize(
3698
+ method='GET',
3699
+ resource_path='/core/clusters/{cluster_id}/node-groups',
3700
+ path_params=_path_params,
3701
+ query_params=_query_params,
3702
+ header_params=_header_params,
3703
+ body=_body_params,
3704
+ post_params=_form_params,
3705
+ files=_files,
3706
+ auth_settings=_auth_settings,
3707
+ collection_formats=_collection_formats,
3708
+ _host=_host,
3709
+ _request_auth=_request_auth
3710
+ )
3711
+
3712
+
3713
+
3714
+
3715
+ @validate_call
3716
+ def retrieve_a_node_group(
3717
+ self,
3718
+ cluster_id: StrictInt,
3719
+ node_group_id: StrictInt,
3720
+ _request_timeout: Union[
3721
+ None,
3722
+ Annotated[StrictFloat, Field(gt=0)],
3723
+ Tuple[
3724
+ Annotated[StrictFloat, Field(gt=0)],
3725
+ Annotated[StrictFloat, Field(gt=0)]
3726
+ ]
3727
+ ] = None,
3728
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3729
+ _content_type: Optional[StrictStr] = None,
3730
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3731
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3732
+ ) -> ClusterNodeGroupsGetResponse:
3733
+ """Retrieve a node group in a cluster
3734
+
3735
+
3736
+ :param cluster_id: (required)
3737
+ :type cluster_id: int
3738
+ :param node_group_id: (required)
3739
+ :type node_group_id: int
3740
+ :param _request_timeout: timeout setting for this request. If one
3741
+ number provided, it will be total request
3742
+ timeout. It can also be a pair (tuple) of
3743
+ (connection, read) timeouts.
3744
+ :type _request_timeout: int, tuple(int, int), optional
3745
+ :param _request_auth: set to override the auth_settings for an a single
3746
+ request; this effectively ignores the
3747
+ authentication in the spec for a single request.
3748
+ :type _request_auth: dict, optional
3749
+ :param _content_type: force content-type for the request.
3750
+ :type _content_type: str, Optional
3751
+ :param _headers: set to override the headers for a single
3752
+ request; this effectively ignores the headers
3753
+ in the spec for a single request.
3754
+ :type _headers: dict, optional
3755
+ :param _host_index: set to override the host_index for a single
3756
+ request; this effectively ignores the host_index
3757
+ in the spec for a single request.
3758
+ :type _host_index: int, optional
3759
+ :return: Returns the result object.
3760
+ """ # noqa: E501
3761
+
3762
+ _param = self._retrieve_a_node_group_serialize(
3763
+ cluster_id=cluster_id,
3764
+ node_group_id=node_group_id,
3765
+ _request_auth=_request_auth,
3766
+ _content_type=_content_type,
3767
+ _headers=_headers,
3768
+ _host_index=_host_index
3769
+ )
3770
+
3771
+ _response_types_map: Dict[str, Optional[str]] = {
3772
+ '200': "ClusterNodeGroupsGetResponse",
3773
+ '400': "ErrorResponseModel",
3774
+ '401': "ErrorResponseModel",
3775
+ '404': "ErrorResponseModel",
3776
+ '500': None,
3777
+ }
3778
+ response_data = self.api_client.call_api(
3779
+ *_param,
3780
+ _request_timeout=_request_timeout
3781
+ )
3782
+ response_data.read()
3783
+ return self.api_client.response_deserialize(
3784
+ response_data=response_data,
3785
+ response_types_map=_response_types_map,
3786
+ ).data
3787
+
3788
+
3789
+ @validate_call
3790
+ def retrieve_a_node_group_with_http_info(
3791
+ self,
3792
+ cluster_id: StrictInt,
3793
+ node_group_id: StrictInt,
3794
+ _request_timeout: Union[
3795
+ None,
3796
+ Annotated[StrictFloat, Field(gt=0)],
3797
+ Tuple[
3798
+ Annotated[StrictFloat, Field(gt=0)],
3799
+ Annotated[StrictFloat, Field(gt=0)]
3800
+ ]
3801
+ ] = None,
3802
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3803
+ _content_type: Optional[StrictStr] = None,
3804
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3805
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3806
+ ) -> ApiResponse[ClusterNodeGroupsGetResponse]:
3807
+ """Retrieve a node group in a cluster
3808
+
3809
+
3810
+ :param cluster_id: (required)
3811
+ :type cluster_id: int
3812
+ :param node_group_id: (required)
3813
+ :type node_group_id: int
3814
+ :param _request_timeout: timeout setting for this request. If one
3815
+ number provided, it will be total request
3816
+ timeout. It can also be a pair (tuple) of
3817
+ (connection, read) timeouts.
3818
+ :type _request_timeout: int, tuple(int, int), optional
3819
+ :param _request_auth: set to override the auth_settings for an a single
3820
+ request; this effectively ignores the
3821
+ authentication in the spec for a single request.
3822
+ :type _request_auth: dict, optional
3823
+ :param _content_type: force content-type for the request.
3824
+ :type _content_type: str, Optional
3825
+ :param _headers: set to override the headers for a single
3826
+ request; this effectively ignores the headers
3827
+ in the spec for a single request.
3828
+ :type _headers: dict, optional
3829
+ :param _host_index: set to override the host_index for a single
3830
+ request; this effectively ignores the host_index
3831
+ in the spec for a single request.
3832
+ :type _host_index: int, optional
3833
+ :return: Returns the result object.
3834
+ """ # noqa: E501
3835
+
3836
+ _param = self._retrieve_a_node_group_serialize(
3837
+ cluster_id=cluster_id,
3838
+ node_group_id=node_group_id,
3839
+ _request_auth=_request_auth,
3840
+ _content_type=_content_type,
3841
+ _headers=_headers,
3842
+ _host_index=_host_index
3843
+ )
3844
+
3845
+ _response_types_map: Dict[str, Optional[str]] = {
3846
+ '200': "ClusterNodeGroupsGetResponse",
3847
+ '400': "ErrorResponseModel",
3848
+ '401': "ErrorResponseModel",
3849
+ '404': "ErrorResponseModel",
3850
+ '500': None,
3851
+ }
3852
+ response_data = self.api_client.call_api(
3853
+ *_param,
3854
+ _request_timeout=_request_timeout
3855
+ )
3856
+ response_data.read()
3857
+ return self.api_client.response_deserialize(
3858
+ response_data=response_data,
3859
+ response_types_map=_response_types_map,
3860
+ )
3861
+
3862
+
3863
+ @validate_call
3864
+ def retrieve_a_node_group_without_preload_content(
3865
+ self,
3866
+ cluster_id: StrictInt,
3867
+ node_group_id: StrictInt,
3868
+ _request_timeout: Union[
3869
+ None,
3870
+ Annotated[StrictFloat, Field(gt=0)],
3871
+ Tuple[
3872
+ Annotated[StrictFloat, Field(gt=0)],
3873
+ Annotated[StrictFloat, Field(gt=0)]
3874
+ ]
3875
+ ] = None,
3876
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3877
+ _content_type: Optional[StrictStr] = None,
3878
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3879
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3880
+ ) -> RESTResponseType:
3881
+ """Retrieve a node group in a cluster
3882
+
3883
+
3884
+ :param cluster_id: (required)
3885
+ :type cluster_id: int
3886
+ :param node_group_id: (required)
3887
+ :type node_group_id: int
3888
+ :param _request_timeout: timeout setting for this request. If one
3889
+ number provided, it will be total request
3890
+ timeout. It can also be a pair (tuple) of
3891
+ (connection, read) timeouts.
3892
+ :type _request_timeout: int, tuple(int, int), optional
3893
+ :param _request_auth: set to override the auth_settings for an a single
3894
+ request; this effectively ignores the
3895
+ authentication in the spec for a single request.
3896
+ :type _request_auth: dict, optional
3897
+ :param _content_type: force content-type for the request.
3898
+ :type _content_type: str, Optional
3899
+ :param _headers: set to override the headers for a single
3900
+ request; this effectively ignores the headers
3901
+ in the spec for a single request.
3902
+ :type _headers: dict, optional
3903
+ :param _host_index: set to override the host_index for a single
3904
+ request; this effectively ignores the host_index
3905
+ in the spec for a single request.
3906
+ :type _host_index: int, optional
3907
+ :return: Returns the result object.
3908
+ """ # noqa: E501
3909
+
3910
+ _param = self._retrieve_a_node_group_serialize(
3911
+ cluster_id=cluster_id,
3912
+ node_group_id=node_group_id,
3913
+ _request_auth=_request_auth,
3914
+ _content_type=_content_type,
3915
+ _headers=_headers,
3916
+ _host_index=_host_index
3917
+ )
3918
+
3919
+ _response_types_map: Dict[str, Optional[str]] = {
3920
+ '200': "ClusterNodeGroupsGetResponse",
3921
+ '400': "ErrorResponseModel",
3922
+ '401': "ErrorResponseModel",
3923
+ '404': "ErrorResponseModel",
3924
+ '500': None,
3925
+ }
3926
+ response_data = self.api_client.call_api(
3927
+ *_param,
3928
+ _request_timeout=_request_timeout
3929
+ )
3930
+ return response_data.response
3931
+
3932
+
3933
+ def _retrieve_a_node_group_serialize(
3934
+ self,
3935
+ cluster_id,
3936
+ node_group_id,
3937
+ _request_auth,
3938
+ _content_type,
3939
+ _headers,
3940
+ _host_index,
3941
+ ) -> RequestSerialized:
3942
+
3943
+ _host = None
3944
+
3945
+ _collection_formats: Dict[str, str] = {
3946
+ }
3947
+
3948
+ _path_params: Dict[str, str] = {}
3949
+ _query_params: List[Tuple[str, str]] = []
3950
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3951
+ _form_params: List[Tuple[str, str]] = []
3952
+ _files: Dict[
3953
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3954
+ ] = {}
3955
+ _body_params: Optional[bytes] = None
3956
+
3957
+ # process the path parameters
3958
+ if cluster_id is not None:
3959
+ _path_params['cluster_id'] = cluster_id
3960
+ if node_group_id is not None:
3961
+ _path_params['node_group_id'] = node_group_id
3962
+ # process the query parameters
3963
+ # process the header parameters
3964
+ # process the form parameters
3965
+ # process the body parameter
3966
+
3967
+
3968
+ # set the HTTP header `Accept`
3969
+ if 'Accept' not in _header_params:
3970
+ _header_params['Accept'] = self.api_client.select_header_accept(
3971
+ [
3972
+ 'application/json'
3973
+ ]
3974
+ )
3975
+
3976
+
3977
+ # authentication setting
3978
+ _auth_settings: List[str] = [
3979
+ 'apiKey'
3980
+ ]
3981
+
3982
+ return self.api_client.param_serialize(
3983
+ method='GET',
3984
+ resource_path='/core/clusters/{cluster_id}/node-groups/{node_group_id}',
1639
3985
  path_params=_path_params,
1640
3986
  query_params=_query_params,
1641
3987
  header_params=_header_params,