ha-sdk-python 1.0.10__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 (237) hide show
  1. ha_sdk_python/__init__.py +490 -0
  2. ha_sdk_python/api/__init__.py +15 -0
  3. ha_sdk_python/api/backups_api.py +2434 -0
  4. ha_sdk_python/api/console_access_api.py +334 -0
  5. ha_sdk_python/api/dns_api.py +896 -0
  6. ha_sdk_python/api/firewall_api.py +1534 -0
  7. ha_sdk_python/api/monitoring_api.py +1234 -0
  8. ha_sdk_python/api/power_management_api.py +2434 -0
  9. ha_sdk_python/api/security_api.py +1243 -0
  10. ha_sdk_python/api/service_management_api.py +1797 -0
  11. ha_sdk_python/api/snapshots_api.py +1534 -0
  12. ha_sdk_python/api/user_management_api.py +331 -0
  13. ha_sdk_python/api/vps_management_api.py +2399 -0
  14. ha_sdk_python/api_client.py +805 -0
  15. ha_sdk_python/api_response.py +21 -0
  16. ha_sdk_python/configuration.py +593 -0
  17. ha_sdk_python/exceptions.py +218 -0
  18. ha_sdk_python/models/__init__.py +227 -0
  19. ha_sdk_python/models/backup_create_response_data.py +97 -0
  20. ha_sdk_python/models/backup_creation_info.py +95 -0
  21. ha_sdk_python/models/backup_item.py +95 -0
  22. ha_sdk_python/models/backup_mode.py +89 -0
  23. ha_sdk_python/models/backup_mode_type.py +38 -0
  24. ha_sdk_python/models/backup_schedule.py +98 -0
  25. ha_sdk_python/models/backup_schedule_list_response_data.py +97 -0
  26. ha_sdk_python/models/bad_request_error_response_content.py +89 -0
  27. ha_sdk_python/models/billing_cycle.py +37 -0
  28. ha_sdk_python/models/cancel_vps_request_content.py +90 -0
  29. ha_sdk_python/models/cancel_vps_response_content.py +94 -0
  30. ha_sdk_python/models/catalogue_config_option.py +105 -0
  31. ha_sdk_python/models/catalogue_config_suboption.py +96 -0
  32. ha_sdk_python/models/catalogue_currency.py +91 -0
  33. ha_sdk_python/models/catalogue_data.py +107 -0
  34. ha_sdk_python/models/catalogue_group.py +99 -0
  35. ha_sdk_python/models/catalogue_plan.py +108 -0
  36. ha_sdk_python/models/catalogue_product.py +131 -0
  37. ha_sdk_python/models/change_password_request_content.py +90 -0
  38. ha_sdk_python/models/change_password_response_content.py +94 -0
  39. ha_sdk_python/models/compression_method.py +89 -0
  40. ha_sdk_python/models/compression_type.py +39 -0
  41. ha_sdk_python/models/create_backup_request_content.py +93 -0
  42. ha_sdk_python/models/create_backup_response_content.py +94 -0
  43. ha_sdk_python/models/create_backup_schedule_request_content.py +108 -0
  44. ha_sdk_python/models/create_backup_schedule_response_content.py +94 -0
  45. ha_sdk_python/models/create_firewall_rule_request_content.py +115 -0
  46. ha_sdk_python/models/create_firewall_rule_response_content.py +94 -0
  47. ha_sdk_python/models/create_notification_request_content.py +111 -0
  48. ha_sdk_python/models/create_notification_response_content.py +94 -0
  49. ha_sdk_python/models/create_order_domain_item.py +101 -0
  50. ha_sdk_python/models/create_order_items.py +105 -0
  51. ha_sdk_python/models/create_order_product.py +108 -0
  52. ha_sdk_python/models/create_order_product_item.py +101 -0
  53. ha_sdk_python/models/create_order_request_content.py +97 -0
  54. ha_sdk_python/models/create_order_response_content.py +94 -0
  55. ha_sdk_python/models/create_order_response_data.py +126 -0
  56. ha_sdk_python/models/create_order_total.py +91 -0
  57. ha_sdk_python/models/create_power_task_request_content.py +160 -0
  58. ha_sdk_python/models/create_power_task_response_content.py +94 -0
  59. ha_sdk_python/models/create_rdns_record_request_content.py +96 -0
  60. ha_sdk_python/models/create_rdns_record_response_content.py +94 -0
  61. ha_sdk_python/models/create_rdns_record_response_data.py +91 -0
  62. ha_sdk_python/models/create_snapshot_request_content.py +91 -0
  63. ha_sdk_python/models/create_snapshot_response_content.py +94 -0
  64. ha_sdk_python/models/day_of_week.py +42 -0
  65. ha_sdk_python/models/delete_backup_request_content.py +89 -0
  66. ha_sdk_python/models/delete_backup_response_content.py +94 -0
  67. ha_sdk_python/models/delete_backup_schedule_request_content.py +89 -0
  68. ha_sdk_python/models/delete_backup_schedule_response_content.py +94 -0
  69. ha_sdk_python/models/delete_firewall_rule_request_content.py +89 -0
  70. ha_sdk_python/models/delete_firewall_rule_response_content.py +94 -0
  71. ha_sdk_python/models/delete_notification_request_content.py +89 -0
  72. ha_sdk_python/models/delete_notification_response_content.py +94 -0
  73. ha_sdk_python/models/delete_power_task_request_content.py +89 -0
  74. ha_sdk_python/models/delete_power_task_response_content.py +94 -0
  75. ha_sdk_python/models/delete_rdns_record_request_content.py +88 -0
  76. ha_sdk_python/models/delete_rdns_record_response_content.py +94 -0
  77. ha_sdk_python/models/delete_snapshot_request_content.py +89 -0
  78. ha_sdk_python/models/delete_snapshot_response_content.py +94 -0
  79. ha_sdk_python/models/edit_backup_schedule_request_content.py +110 -0
  80. ha_sdk_python/models/edit_backup_schedule_response_content.py +94 -0
  81. ha_sdk_python/models/firewall_list_response_data.py +125 -0
  82. ha_sdk_python/models/firewall_move_direction.py +39 -0
  83. ha_sdk_python/models/firewall_move_response_data.py +91 -0
  84. ha_sdk_python/models/firewall_option.py +89 -0
  85. ha_sdk_python/models/firewall_rule.py +113 -0
  86. ha_sdk_python/models/firewall_rule_action.py +38 -0
  87. ha_sdk_python/models/firewall_rule_type.py +38 -0
  88. ha_sdk_python/models/forbidden_error_response_content.py +89 -0
  89. ha_sdk_python/models/get_catalogue_request_content.py +89 -0
  90. ha_sdk_python/models/get_catalogue_response_content.py +94 -0
  91. ha_sdk_python/models/get_no_vnc_console_request_content.py +87 -0
  92. ha_sdk_python/models/get_no_vnc_console_response_content.py +94 -0
  93. ha_sdk_python/models/get_private_ssh_key_request_content.py +87 -0
  94. ha_sdk_python/models/get_private_ssh_key_response_content.py +94 -0
  95. ha_sdk_python/models/get_public_ssh_key_request_content.py +87 -0
  96. ha_sdk_python/models/get_public_ssh_key_response_content.py +94 -0
  97. ha_sdk_python/models/get_vps_config_request_content.py +87 -0
  98. ha_sdk_python/models/get_vps_config_response_content.py +94 -0
  99. ha_sdk_python/models/get_vps_details_request_content.py +87 -0
  100. ha_sdk_python/models/get_vps_details_response_content.py +94 -0
  101. ha_sdk_python/models/internal_service_error_response_content.py +89 -0
  102. ha_sdk_python/models/invalid_state_error_response_content.py +89 -0
  103. ha_sdk_python/models/list_backup_schedules_request_content.py +87 -0
  104. ha_sdk_python/models/list_backup_schedules_response_content.py +94 -0
  105. ha_sdk_python/models/list_backups_request_content.py +87 -0
  106. ha_sdk_python/models/list_backups_response_content.py +94 -0
  107. ha_sdk_python/models/list_firewall_rules_request_content.py +87 -0
  108. ha_sdk_python/models/list_firewall_rules_response_content.py +94 -0
  109. ha_sdk_python/models/list_isos_request_content.py +87 -0
  110. ha_sdk_python/models/list_isos_response_content.py +94 -0
  111. ha_sdk_python/models/list_isos_response_data.py +89 -0
  112. ha_sdk_python/models/list_notifications_request_content.py +87 -0
  113. ha_sdk_python/models/list_notifications_response_content.py +94 -0
  114. ha_sdk_python/models/list_orders_response_content.py +94 -0
  115. ha_sdk_python/models/list_orders_response_data.py +95 -0
  116. ha_sdk_python/models/list_power_tasks_request_content.py +87 -0
  117. ha_sdk_python/models/list_power_tasks_response_content.py +94 -0
  118. ha_sdk_python/models/list_rdns_records_response_content.py +94 -0
  119. ha_sdk_python/models/list_rdns_response_data.py +115 -0
  120. ha_sdk_python/models/list_reinstall_os_request_content.py +87 -0
  121. ha_sdk_python/models/list_reinstall_os_response_content.py +94 -0
  122. ha_sdk_python/models/list_reinstall_os_response_data.py +89 -0
  123. ha_sdk_python/models/list_snapshots_request_content.py +87 -0
  124. ha_sdk_python/models/list_snapshots_response_content.py +94 -0
  125. ha_sdk_python/models/list_vps_services_data.py +95 -0
  126. ha_sdk_python/models/list_vps_services_response_content.py +94 -0
  127. ha_sdk_python/models/mount_iso_request_content.py +91 -0
  128. ha_sdk_python/models/mount_iso_response_content.py +94 -0
  129. ha_sdk_python/models/move_firewall_rule_request_content.py +94 -0
  130. ha_sdk_python/models/move_firewall_rule_response_content.py +94 -0
  131. ha_sdk_python/models/no_vnc_console_details.py +95 -0
  132. ha_sdk_python/models/no_vnc_console_response_data.py +93 -0
  133. ha_sdk_python/models/notification.py +105 -0
  134. ha_sdk_python/models/notification_create_response_data.py +93 -0
  135. ha_sdk_python/models/notification_dialog_rules.py +95 -0
  136. ha_sdk_python/models/notification_list_response_data.py +103 -0
  137. ha_sdk_python/models/notification_status.py +43 -0
  138. ha_sdk_python/models/operation_status.py +37 -0
  139. ha_sdk_python/models/order.py +109 -0
  140. ha_sdk_python/models/order_last_attempt.py +93 -0
  141. ha_sdk_python/models/order_warning.py +89 -0
  142. ha_sdk_python/models/payment_error.py +89 -0
  143. ha_sdk_python/models/payment_status.py +38 -0
  144. ha_sdk_python/models/power_task.py +105 -0
  145. ha_sdk_python/models/power_task_action.py +38 -0
  146. ha_sdk_python/models/power_task_create_response_data.py +93 -0
  147. ha_sdk_python/models/power_task_dialog_rules.py +95 -0
  148. ha_sdk_python/models/power_task_job_type.py +38 -0
  149. ha_sdk_python/models/power_task_list_response_data.py +107 -0
  150. ha_sdk_python/models/public_ssh_key_response_data.py +93 -0
  151. ha_sdk_python/models/rdns_available_item.py +111 -0
  152. ha_sdk_python/models/rdns_pool.py +89 -0
  153. ha_sdk_python/models/rdns_record.py +109 -0
  154. ha_sdk_python/models/reboot_vps_request_content.py +87 -0
  155. ha_sdk_python/models/reboot_vps_response_content.py +94 -0
  156. ha_sdk_python/models/resource_not_found_error_response_content.py +89 -0
  157. ha_sdk_python/models/restore_backup_request_content.py +89 -0
  158. ha_sdk_python/models/restore_backup_response_content.py +94 -0
  159. ha_sdk_python/models/retry_payment_request_content.py +89 -0
  160. ha_sdk_python/models/retry_payment_response_content.py +94 -0
  161. ha_sdk_python/models/retry_payment_response_data.py +98 -0
  162. ha_sdk_python/models/retry_payment_total.py +91 -0
  163. ha_sdk_python/models/rollback_snapshot_request_content.py +89 -0
  164. ha_sdk_python/models/rollback_snapshot_response_content.py +94 -0
  165. ha_sdk_python/models/service_backups_response_data.py +131 -0
  166. ha_sdk_python/models/service_snapshots_response_data.py +101 -0
  167. ha_sdk_python/models/service_unavailable_error_response_content.py +89 -0
  168. ha_sdk_python/models/shutdown_vps_request_content.py +87 -0
  169. ha_sdk_python/models/shutdown_vps_response_content.py +94 -0
  170. ha_sdk_python/models/snapshot_create_response_data.py +89 -0
  171. ha_sdk_python/models/snapshot_item.py +95 -0
  172. ha_sdk_python/models/ssh_key_details.py +89 -0
  173. ha_sdk_python/models/start_vps_request_content.py +87 -0
  174. ha_sdk_python/models/start_vps_response_content.py +94 -0
  175. ha_sdk_python/models/stop_vps_request_content.py +87 -0
  176. ha_sdk_python/models/stop_vps_response_content.py +94 -0
  177. ha_sdk_python/models/too_many_requests_error_response_content.py +89 -0
  178. ha_sdk_python/models/trigger_reinstall_request_content.py +89 -0
  179. ha_sdk_python/models/trigger_reinstall_response_content.py +94 -0
  180. ha_sdk_python/models/trigger_reinstall_response_data.py +89 -0
  181. ha_sdk_python/models/unauthorized_error_response_content.py +89 -0
  182. ha_sdk_python/models/update_firewall_rule_request_content.py +94 -0
  183. ha_sdk_python/models/update_firewall_rule_response_content.py +94 -0
  184. ha_sdk_python/models/update_notification_request_content.py +113 -0
  185. ha_sdk_python/models/update_notification_response_content.py +94 -0
  186. ha_sdk_python/models/update_power_task_request_content.py +164 -0
  187. ha_sdk_python/models/update_power_task_response_content.py +94 -0
  188. ha_sdk_python/models/update_snapshot_request_content.py +91 -0
  189. ha_sdk_python/models/update_snapshot_response_content.py +94 -0
  190. ha_sdk_python/models/update_ssh_keys_request_content.py +97 -0
  191. ha_sdk_python/models/update_ssh_keys_response_content.py +94 -0
  192. ha_sdk_python/models/update_vps_config_request_content.py +99 -0
  193. ha_sdk_python/models/update_vps_config_response_content.py +94 -0
  194. ha_sdk_python/models/user_change_password_details.py +91 -0
  195. ha_sdk_python/models/user_change_password_request_content.py +92 -0
  196. ha_sdk_python/models/user_change_password_response_content.py +94 -0
  197. ha_sdk_python/models/user_change_password_response_data.py +95 -0
  198. ha_sdk_python/models/validate_pricing_base.py +89 -0
  199. ha_sdk_python/models/validate_pricing_breakdown.py +103 -0
  200. ha_sdk_python/models/validate_pricing_config_item.py +116 -0
  201. ha_sdk_python/models/validate_pricing_currency.py +93 -0
  202. ha_sdk_python/models/validate_pricing_discount.py +97 -0
  203. ha_sdk_python/models/validate_pricing_plan_config.py +97 -0
  204. ha_sdk_python/models/validate_pricing_plan_pricing.py +89 -0
  205. ha_sdk_python/models/validate_pricing_price_range.py +91 -0
  206. ha_sdk_python/models/validate_pricing_product.py +101 -0
  207. ha_sdk_python/models/validate_pricing_product_result.py +121 -0
  208. ha_sdk_python/models/validate_pricing_prorata.py +95 -0
  209. ha_sdk_python/models/validate_pricing_request_content.py +97 -0
  210. ha_sdk_python/models/validate_pricing_response_content.py +94 -0
  211. ha_sdk_python/models/validate_pricing_response_data.py +109 -0
  212. ha_sdk_python/models/validate_pricing_summary.py +101 -0
  213. ha_sdk_python/models/validate_pricing_summary_recurring.py +91 -0
  214. ha_sdk_python/models/validation_error_response_content.py +89 -0
  215. ha_sdk_python/models/vps_available_features.py +115 -0
  216. ha_sdk_python/models/vps_bandwidth_info.py +94 -0
  217. ha_sdk_python/models/vps_cancel_response_data.py +93 -0
  218. ha_sdk_python/models/vps_cancel_type.py +37 -0
  219. ha_sdk_python/models/vps_config_response_data.py +108 -0
  220. ha_sdk_python/models/vps_cpu_info.py +92 -0
  221. ha_sdk_python/models/vps_credentials.py +89 -0
  222. ha_sdk_python/models/vps_details_response.py +143 -0
  223. ha_sdk_python/models/vps_disk_info.py +96 -0
  224. ha_sdk_python/models/vps_memory_info.py +96 -0
  225. ha_sdk_python/models/vps_network_rate.py +92 -0
  226. ha_sdk_python/models/vps_os_info.py +89 -0
  227. ha_sdk_python/models/vps_service_info.py +97 -0
  228. ha_sdk_python/models/vps_simple_action_response_data.py +87 -0
  229. ha_sdk_python/models/vps_vm_info.py +102 -0
  230. ha_sdk_python/py.typed +0 -0
  231. ha_sdk_python/rest.py +263 -0
  232. ha_sdk_python/retryable_paths.py +26 -0
  233. ha_sdk_python-1.0.10.dist-info/METADATA +131 -0
  234. ha_sdk_python-1.0.10.dist-info/RECORD +237 -0
  235. ha_sdk_python-1.0.10.dist-info/WHEEL +5 -0
  236. ha_sdk_python-1.0.10.dist-info/licenses/LICENSE +21 -0
  237. ha_sdk_python-1.0.10.dist-info/top_level.txt +1 -0
@@ -0,0 +1,2399 @@
1
+ """
2
+ HostAfricaApi
3
+
4
+ HostAfrica API
5
+
6
+ The version of the OpenAPI document: 2026-01-01
7
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
8
+
9
+ Do not edit the class manually.
10
+ """ # noqa: E501
11
+
12
+
13
+ import warnings
14
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
15
+ from typing import Any, Dict, List, Optional, Tuple, Union
16
+ from typing_extensions import Annotated
17
+
18
+ from ha_sdk_python.models.get_vps_config_request_content import GetVpsConfigRequestContent
19
+ from ha_sdk_python.models.get_vps_config_response_content import GetVpsConfigResponseContent
20
+ from ha_sdk_python.models.get_vps_details_request_content import GetVpsDetailsRequestContent
21
+ from ha_sdk_python.models.get_vps_details_response_content import GetVpsDetailsResponseContent
22
+ from ha_sdk_python.models.list_isos_request_content import ListIsosRequestContent
23
+ from ha_sdk_python.models.list_isos_response_content import ListIsosResponseContent
24
+ from ha_sdk_python.models.list_reinstall_os_request_content import ListReinstallOsRequestContent
25
+ from ha_sdk_python.models.list_reinstall_os_response_content import ListReinstallOsResponseContent
26
+ from ha_sdk_python.models.list_vps_services_response_content import ListVpsServicesResponseContent
27
+ from ha_sdk_python.models.mount_iso_request_content import MountIsoRequestContent
28
+ from ha_sdk_python.models.mount_iso_response_content import MountIsoResponseContent
29
+ from ha_sdk_python.models.trigger_reinstall_request_content import TriggerReinstallRequestContent
30
+ from ha_sdk_python.models.trigger_reinstall_response_content import TriggerReinstallResponseContent
31
+ from ha_sdk_python.models.update_vps_config_request_content import UpdateVpsConfigRequestContent
32
+ from ha_sdk_python.models.update_vps_config_response_content import UpdateVpsConfigResponseContent
33
+
34
+ from ha_sdk_python.api_client import ApiClient, RequestSerialized
35
+ from ha_sdk_python.api_response import ApiResponse
36
+ from ha_sdk_python.rest import RESTResponseType
37
+
38
+
39
+ class VPSManagementApi:
40
+ """NOTE: This class is auto generated by OpenAPI Generator
41
+ Ref: https://openapi-generator.tech
42
+
43
+ Do not edit the class manually.
44
+ """
45
+
46
+ def __init__(self, api_client=None) -> None:
47
+ if api_client is None:
48
+ api_client = ApiClient.get_default()
49
+ self.api_client = api_client
50
+
51
+
52
+ @validate_call
53
+ def get_vps_config(
54
+ self,
55
+ get_vps_config_request_content: GetVpsConfigRequestContent,
56
+ _request_timeout: Union[
57
+ None,
58
+ Annotated[StrictFloat, Field(gt=0)],
59
+ Tuple[
60
+ Annotated[StrictFloat, Field(gt=0)],
61
+ Annotated[StrictFloat, Field(gt=0)]
62
+ ]
63
+ ] = None,
64
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
65
+ _content_type: Optional[StrictStr] = None,
66
+ _headers: Optional[Dict[StrictStr, Any]] = None,
67
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
68
+ ) -> GetVpsConfigResponseContent:
69
+ """get_vps_config
70
+
71
+ Retrieves VPS configuration settings including name, hostname, auto-start, boot order, and CD-ROM
72
+
73
+ :param get_vps_config_request_content: (required)
74
+ :type get_vps_config_request_content: GetVpsConfigRequestContent
75
+ :param _request_timeout: timeout setting for this request. If one
76
+ number provided, it will be total request
77
+ timeout. It can also be a pair (tuple) of
78
+ (connection, read) timeouts.
79
+ :type _request_timeout: int, tuple(int, int), optional
80
+ :param _request_auth: set to override the auth_settings for an a single
81
+ request; this effectively ignores the
82
+ authentication in the spec for a single request.
83
+ :type _request_auth: dict, optional
84
+ :param _content_type: force content-type for the request.
85
+ :type _content_type: str, Optional
86
+ :param _headers: set to override the headers for a single
87
+ request; this effectively ignores the headers
88
+ in the spec for a single request.
89
+ :type _headers: dict, optional
90
+ :param _host_index: set to override the host_index for a single
91
+ request; this effectively ignores the host_index
92
+ in the spec for a single request.
93
+ :type _host_index: int, optional
94
+ :return: Returns the result object.
95
+ """ # noqa: E501
96
+
97
+ _param = self._get_vps_config_serialize(
98
+ get_vps_config_request_content=get_vps_config_request_content,
99
+ _request_auth=_request_auth,
100
+ _content_type=_content_type,
101
+ _headers=_headers,
102
+ _host_index=_host_index
103
+ )
104
+
105
+ _response_types_map: Dict[str, Optional[str]] = {
106
+ '200': "GetVpsConfigResponseContent",
107
+ '400': "BadRequestErrorResponseContent",
108
+ '401': "UnauthorizedErrorResponseContent",
109
+ '403': "ForbiddenErrorResponseContent",
110
+ '404': "ResourceNotFoundErrorResponseContent",
111
+ '429': "TooManyRequestsErrorResponseContent",
112
+ '500': "InternalServiceErrorResponseContent",
113
+ '503': "ServiceUnavailableErrorResponseContent",
114
+ }
115
+ response_data = self.api_client.call_api(
116
+ *_param,
117
+ _request_timeout=_request_timeout
118
+ )
119
+ response_data.read()
120
+ return self.api_client.response_deserialize(
121
+ response_data=response_data,
122
+ response_types_map=_response_types_map,
123
+ ).data
124
+
125
+
126
+ @validate_call
127
+ def get_vps_config_with_http_info(
128
+ self,
129
+ get_vps_config_request_content: GetVpsConfigRequestContent,
130
+ _request_timeout: Union[
131
+ None,
132
+ Annotated[StrictFloat, Field(gt=0)],
133
+ Tuple[
134
+ Annotated[StrictFloat, Field(gt=0)],
135
+ Annotated[StrictFloat, Field(gt=0)]
136
+ ]
137
+ ] = None,
138
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
139
+ _content_type: Optional[StrictStr] = None,
140
+ _headers: Optional[Dict[StrictStr, Any]] = None,
141
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
142
+ ) -> ApiResponse[GetVpsConfigResponseContent]:
143
+ """get_vps_config
144
+
145
+ Retrieves VPS configuration settings including name, hostname, auto-start, boot order, and CD-ROM
146
+
147
+ :param get_vps_config_request_content: (required)
148
+ :type get_vps_config_request_content: GetVpsConfigRequestContent
149
+ :param _request_timeout: timeout setting for this request. If one
150
+ number provided, it will be total request
151
+ timeout. It can also be a pair (tuple) of
152
+ (connection, read) timeouts.
153
+ :type _request_timeout: int, tuple(int, int), optional
154
+ :param _request_auth: set to override the auth_settings for an a single
155
+ request; this effectively ignores the
156
+ authentication in the spec for a single request.
157
+ :type _request_auth: dict, optional
158
+ :param _content_type: force content-type for the request.
159
+ :type _content_type: str, Optional
160
+ :param _headers: set to override the headers for a single
161
+ request; this effectively ignores the headers
162
+ in the spec for a single request.
163
+ :type _headers: dict, optional
164
+ :param _host_index: set to override the host_index for a single
165
+ request; this effectively ignores the host_index
166
+ in the spec for a single request.
167
+ :type _host_index: int, optional
168
+ :return: Returns the result object.
169
+ """ # noqa: E501
170
+
171
+ _param = self._get_vps_config_serialize(
172
+ get_vps_config_request_content=get_vps_config_request_content,
173
+ _request_auth=_request_auth,
174
+ _content_type=_content_type,
175
+ _headers=_headers,
176
+ _host_index=_host_index
177
+ )
178
+
179
+ _response_types_map: Dict[str, Optional[str]] = {
180
+ '200': "GetVpsConfigResponseContent",
181
+ '400': "BadRequestErrorResponseContent",
182
+ '401': "UnauthorizedErrorResponseContent",
183
+ '403': "ForbiddenErrorResponseContent",
184
+ '404': "ResourceNotFoundErrorResponseContent",
185
+ '429': "TooManyRequestsErrorResponseContent",
186
+ '500': "InternalServiceErrorResponseContent",
187
+ '503': "ServiceUnavailableErrorResponseContent",
188
+ }
189
+ response_data = self.api_client.call_api(
190
+ *_param,
191
+ _request_timeout=_request_timeout
192
+ )
193
+ response_data.read()
194
+ return self.api_client.response_deserialize(
195
+ response_data=response_data,
196
+ response_types_map=_response_types_map,
197
+ )
198
+
199
+
200
+ @validate_call
201
+ def get_vps_config_without_preload_content(
202
+ self,
203
+ get_vps_config_request_content: GetVpsConfigRequestContent,
204
+ _request_timeout: Union[
205
+ None,
206
+ Annotated[StrictFloat, Field(gt=0)],
207
+ Tuple[
208
+ Annotated[StrictFloat, Field(gt=0)],
209
+ Annotated[StrictFloat, Field(gt=0)]
210
+ ]
211
+ ] = None,
212
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
213
+ _content_type: Optional[StrictStr] = None,
214
+ _headers: Optional[Dict[StrictStr, Any]] = None,
215
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
216
+ ) -> RESTResponseType:
217
+ """get_vps_config
218
+
219
+ Retrieves VPS configuration settings including name, hostname, auto-start, boot order, and CD-ROM
220
+
221
+ :param get_vps_config_request_content: (required)
222
+ :type get_vps_config_request_content: GetVpsConfigRequestContent
223
+ :param _request_timeout: timeout setting for this request. If one
224
+ number provided, it will be total request
225
+ timeout. It can also be a pair (tuple) of
226
+ (connection, read) timeouts.
227
+ :type _request_timeout: int, tuple(int, int), optional
228
+ :param _request_auth: set to override the auth_settings for an a single
229
+ request; this effectively ignores the
230
+ authentication in the spec for a single request.
231
+ :type _request_auth: dict, optional
232
+ :param _content_type: force content-type for the request.
233
+ :type _content_type: str, Optional
234
+ :param _headers: set to override the headers for a single
235
+ request; this effectively ignores the headers
236
+ in the spec for a single request.
237
+ :type _headers: dict, optional
238
+ :param _host_index: set to override the host_index for a single
239
+ request; this effectively ignores the host_index
240
+ in the spec for a single request.
241
+ :type _host_index: int, optional
242
+ :return: Returns the result object.
243
+ """ # noqa: E501
244
+
245
+ _param = self._get_vps_config_serialize(
246
+ get_vps_config_request_content=get_vps_config_request_content,
247
+ _request_auth=_request_auth,
248
+ _content_type=_content_type,
249
+ _headers=_headers,
250
+ _host_index=_host_index
251
+ )
252
+
253
+ _response_types_map: Dict[str, Optional[str]] = {
254
+ '200': "GetVpsConfigResponseContent",
255
+ '400': "BadRequestErrorResponseContent",
256
+ '401': "UnauthorizedErrorResponseContent",
257
+ '403': "ForbiddenErrorResponseContent",
258
+ '404': "ResourceNotFoundErrorResponseContent",
259
+ '429': "TooManyRequestsErrorResponseContent",
260
+ '500': "InternalServiceErrorResponseContent",
261
+ '503': "ServiceUnavailableErrorResponseContent",
262
+ }
263
+ response_data = self.api_client.call_api(
264
+ *_param,
265
+ _request_timeout=_request_timeout
266
+ )
267
+ return response_data.response
268
+
269
+
270
+ def _get_vps_config_serialize(
271
+ self,
272
+ get_vps_config_request_content,
273
+ _request_auth,
274
+ _content_type,
275
+ _headers,
276
+ _host_index,
277
+ ) -> RequestSerialized:
278
+
279
+ _host = None
280
+
281
+ _collection_formats: Dict[str, str] = {
282
+ }
283
+
284
+ _path_params: Dict[str, str] = {}
285
+ _query_params: List[Tuple[str, str]] = []
286
+ _header_params: Dict[str, Optional[str]] = _headers or {}
287
+ _form_params: List[Tuple[str, str]] = []
288
+ _files: Dict[
289
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
290
+ ] = {}
291
+ _body_params: Optional[bytes] = None
292
+
293
+ # process the path parameters
294
+ # process the query parameters
295
+ # process the header parameters
296
+ # process the form parameters
297
+ # process the body parameter
298
+ if get_vps_config_request_content is not None:
299
+ _body_params = get_vps_config_request_content
300
+
301
+
302
+ # set the HTTP header `Accept`
303
+ if 'Accept' not in _header_params:
304
+ _header_params['Accept'] = self.api_client.select_header_accept(
305
+ [
306
+ 'application/json'
307
+ ]
308
+ )
309
+
310
+ # set the HTTP header `Content-Type`
311
+ if _content_type:
312
+ _header_params['Content-Type'] = _content_type
313
+ else:
314
+ _default_content_type = (
315
+ self.api_client.select_header_content_type(
316
+ [
317
+ 'application/json'
318
+ ]
319
+ )
320
+ )
321
+ if _default_content_type is not None:
322
+ _header_params['Content-Type'] = _default_content_type
323
+
324
+ # authentication setting
325
+ _auth_settings: List[str] = [
326
+ 'BearerAuth'
327
+ ]
328
+
329
+ return self.api_client.param_serialize(
330
+ method='POST',
331
+ resource_path='/vps/get-config',
332
+ path_params=_path_params,
333
+ query_params=_query_params,
334
+ header_params=_header_params,
335
+ body=_body_params,
336
+ post_params=_form_params,
337
+ files=_files,
338
+ auth_settings=_auth_settings,
339
+ collection_formats=_collection_formats,
340
+ _host=_host,
341
+ _request_auth=_request_auth
342
+ )
343
+
344
+
345
+
346
+
347
+ @validate_call
348
+ def get_vps_details(
349
+ self,
350
+ get_vps_details_request_content: GetVpsDetailsRequestContent,
351
+ _request_timeout: Union[
352
+ None,
353
+ Annotated[StrictFloat, Field(gt=0)],
354
+ Tuple[
355
+ Annotated[StrictFloat, Field(gt=0)],
356
+ Annotated[StrictFloat, Field(gt=0)]
357
+ ]
358
+ ] = None,
359
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
360
+ _content_type: Optional[StrictStr] = None,
361
+ _headers: Optional[Dict[StrictStr, Any]] = None,
362
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
363
+ ) -> GetVpsDetailsResponseContent:
364
+ """get_vps_details
365
+
366
+ Gets detailed information about a VPS service including configuration, network settings, and statistics
367
+
368
+ :param get_vps_details_request_content: (required)
369
+ :type get_vps_details_request_content: GetVpsDetailsRequestContent
370
+ :param _request_timeout: timeout setting for this request. If one
371
+ number provided, it will be total request
372
+ timeout. It can also be a pair (tuple) of
373
+ (connection, read) timeouts.
374
+ :type _request_timeout: int, tuple(int, int), optional
375
+ :param _request_auth: set to override the auth_settings for an a single
376
+ request; this effectively ignores the
377
+ authentication in the spec for a single request.
378
+ :type _request_auth: dict, optional
379
+ :param _content_type: force content-type for the request.
380
+ :type _content_type: str, Optional
381
+ :param _headers: set to override the headers for a single
382
+ request; this effectively ignores the headers
383
+ in the spec for a single request.
384
+ :type _headers: dict, optional
385
+ :param _host_index: set to override the host_index for a single
386
+ request; this effectively ignores the host_index
387
+ in the spec for a single request.
388
+ :type _host_index: int, optional
389
+ :return: Returns the result object.
390
+ """ # noqa: E501
391
+
392
+ _param = self._get_vps_details_serialize(
393
+ get_vps_details_request_content=get_vps_details_request_content,
394
+ _request_auth=_request_auth,
395
+ _content_type=_content_type,
396
+ _headers=_headers,
397
+ _host_index=_host_index
398
+ )
399
+
400
+ _response_types_map: Dict[str, Optional[str]] = {
401
+ '200': "GetVpsDetailsResponseContent",
402
+ '400': "BadRequestErrorResponseContent",
403
+ '401': "UnauthorizedErrorResponseContent",
404
+ '403': "ForbiddenErrorResponseContent",
405
+ '404': "ResourceNotFoundErrorResponseContent",
406
+ '422': "ValidationErrorResponseContent",
407
+ '429': "TooManyRequestsErrorResponseContent",
408
+ '500': "InternalServiceErrorResponseContent",
409
+ '503': "ServiceUnavailableErrorResponseContent",
410
+ }
411
+ response_data = self.api_client.call_api(
412
+ *_param,
413
+ _request_timeout=_request_timeout
414
+ )
415
+ response_data.read()
416
+ return self.api_client.response_deserialize(
417
+ response_data=response_data,
418
+ response_types_map=_response_types_map,
419
+ ).data
420
+
421
+
422
+ @validate_call
423
+ def get_vps_details_with_http_info(
424
+ self,
425
+ get_vps_details_request_content: GetVpsDetailsRequestContent,
426
+ _request_timeout: Union[
427
+ None,
428
+ Annotated[StrictFloat, Field(gt=0)],
429
+ Tuple[
430
+ Annotated[StrictFloat, Field(gt=0)],
431
+ Annotated[StrictFloat, Field(gt=0)]
432
+ ]
433
+ ] = None,
434
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
435
+ _content_type: Optional[StrictStr] = None,
436
+ _headers: Optional[Dict[StrictStr, Any]] = None,
437
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
438
+ ) -> ApiResponse[GetVpsDetailsResponseContent]:
439
+ """get_vps_details
440
+
441
+ Gets detailed information about a VPS service including configuration, network settings, and statistics
442
+
443
+ :param get_vps_details_request_content: (required)
444
+ :type get_vps_details_request_content: GetVpsDetailsRequestContent
445
+ :param _request_timeout: timeout setting for this request. If one
446
+ number provided, it will be total request
447
+ timeout. It can also be a pair (tuple) of
448
+ (connection, read) timeouts.
449
+ :type _request_timeout: int, tuple(int, int), optional
450
+ :param _request_auth: set to override the auth_settings for an a single
451
+ request; this effectively ignores the
452
+ authentication in the spec for a single request.
453
+ :type _request_auth: dict, optional
454
+ :param _content_type: force content-type for the request.
455
+ :type _content_type: str, Optional
456
+ :param _headers: set to override the headers for a single
457
+ request; this effectively ignores the headers
458
+ in the spec for a single request.
459
+ :type _headers: dict, optional
460
+ :param _host_index: set to override the host_index for a single
461
+ request; this effectively ignores the host_index
462
+ in the spec for a single request.
463
+ :type _host_index: int, optional
464
+ :return: Returns the result object.
465
+ """ # noqa: E501
466
+
467
+ _param = self._get_vps_details_serialize(
468
+ get_vps_details_request_content=get_vps_details_request_content,
469
+ _request_auth=_request_auth,
470
+ _content_type=_content_type,
471
+ _headers=_headers,
472
+ _host_index=_host_index
473
+ )
474
+
475
+ _response_types_map: Dict[str, Optional[str]] = {
476
+ '200': "GetVpsDetailsResponseContent",
477
+ '400': "BadRequestErrorResponseContent",
478
+ '401': "UnauthorizedErrorResponseContent",
479
+ '403': "ForbiddenErrorResponseContent",
480
+ '404': "ResourceNotFoundErrorResponseContent",
481
+ '422': "ValidationErrorResponseContent",
482
+ '429': "TooManyRequestsErrorResponseContent",
483
+ '500': "InternalServiceErrorResponseContent",
484
+ '503': "ServiceUnavailableErrorResponseContent",
485
+ }
486
+ response_data = self.api_client.call_api(
487
+ *_param,
488
+ _request_timeout=_request_timeout
489
+ )
490
+ response_data.read()
491
+ return self.api_client.response_deserialize(
492
+ response_data=response_data,
493
+ response_types_map=_response_types_map,
494
+ )
495
+
496
+
497
+ @validate_call
498
+ def get_vps_details_without_preload_content(
499
+ self,
500
+ get_vps_details_request_content: GetVpsDetailsRequestContent,
501
+ _request_timeout: Union[
502
+ None,
503
+ Annotated[StrictFloat, Field(gt=0)],
504
+ Tuple[
505
+ Annotated[StrictFloat, Field(gt=0)],
506
+ Annotated[StrictFloat, Field(gt=0)]
507
+ ]
508
+ ] = None,
509
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
510
+ _content_type: Optional[StrictStr] = None,
511
+ _headers: Optional[Dict[StrictStr, Any]] = None,
512
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
513
+ ) -> RESTResponseType:
514
+ """get_vps_details
515
+
516
+ Gets detailed information about a VPS service including configuration, network settings, and statistics
517
+
518
+ :param get_vps_details_request_content: (required)
519
+ :type get_vps_details_request_content: GetVpsDetailsRequestContent
520
+ :param _request_timeout: timeout setting for this request. If one
521
+ number provided, it will be total request
522
+ timeout. It can also be a pair (tuple) of
523
+ (connection, read) timeouts.
524
+ :type _request_timeout: int, tuple(int, int), optional
525
+ :param _request_auth: set to override the auth_settings for an a single
526
+ request; this effectively ignores the
527
+ authentication in the spec for a single request.
528
+ :type _request_auth: dict, optional
529
+ :param _content_type: force content-type for the request.
530
+ :type _content_type: str, Optional
531
+ :param _headers: set to override the headers for a single
532
+ request; this effectively ignores the headers
533
+ in the spec for a single request.
534
+ :type _headers: dict, optional
535
+ :param _host_index: set to override the host_index for a single
536
+ request; this effectively ignores the host_index
537
+ in the spec for a single request.
538
+ :type _host_index: int, optional
539
+ :return: Returns the result object.
540
+ """ # noqa: E501
541
+
542
+ _param = self._get_vps_details_serialize(
543
+ get_vps_details_request_content=get_vps_details_request_content,
544
+ _request_auth=_request_auth,
545
+ _content_type=_content_type,
546
+ _headers=_headers,
547
+ _host_index=_host_index
548
+ )
549
+
550
+ _response_types_map: Dict[str, Optional[str]] = {
551
+ '200': "GetVpsDetailsResponseContent",
552
+ '400': "BadRequestErrorResponseContent",
553
+ '401': "UnauthorizedErrorResponseContent",
554
+ '403': "ForbiddenErrorResponseContent",
555
+ '404': "ResourceNotFoundErrorResponseContent",
556
+ '422': "ValidationErrorResponseContent",
557
+ '429': "TooManyRequestsErrorResponseContent",
558
+ '500': "InternalServiceErrorResponseContent",
559
+ '503': "ServiceUnavailableErrorResponseContent",
560
+ }
561
+ response_data = self.api_client.call_api(
562
+ *_param,
563
+ _request_timeout=_request_timeout
564
+ )
565
+ return response_data.response
566
+
567
+
568
+ def _get_vps_details_serialize(
569
+ self,
570
+ get_vps_details_request_content,
571
+ _request_auth,
572
+ _content_type,
573
+ _headers,
574
+ _host_index,
575
+ ) -> RequestSerialized:
576
+
577
+ _host = None
578
+
579
+ _collection_formats: Dict[str, str] = {
580
+ }
581
+
582
+ _path_params: Dict[str, str] = {}
583
+ _query_params: List[Tuple[str, str]] = []
584
+ _header_params: Dict[str, Optional[str]] = _headers or {}
585
+ _form_params: List[Tuple[str, str]] = []
586
+ _files: Dict[
587
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
588
+ ] = {}
589
+ _body_params: Optional[bytes] = None
590
+
591
+ # process the path parameters
592
+ # process the query parameters
593
+ # process the header parameters
594
+ # process the form parameters
595
+ # process the body parameter
596
+ if get_vps_details_request_content is not None:
597
+ _body_params = get_vps_details_request_content
598
+
599
+
600
+ # set the HTTP header `Accept`
601
+ if 'Accept' not in _header_params:
602
+ _header_params['Accept'] = self.api_client.select_header_accept(
603
+ [
604
+ 'application/json'
605
+ ]
606
+ )
607
+
608
+ # set the HTTP header `Content-Type`
609
+ if _content_type:
610
+ _header_params['Content-Type'] = _content_type
611
+ else:
612
+ _default_content_type = (
613
+ self.api_client.select_header_content_type(
614
+ [
615
+ 'application/json'
616
+ ]
617
+ )
618
+ )
619
+ if _default_content_type is not None:
620
+ _header_params['Content-Type'] = _default_content_type
621
+
622
+ # authentication setting
623
+ _auth_settings: List[str] = [
624
+ 'BearerAuth'
625
+ ]
626
+
627
+ return self.api_client.param_serialize(
628
+ method='POST',
629
+ resource_path='/vps/get-details',
630
+ path_params=_path_params,
631
+ query_params=_query_params,
632
+ header_params=_header_params,
633
+ body=_body_params,
634
+ post_params=_form_params,
635
+ files=_files,
636
+ auth_settings=_auth_settings,
637
+ collection_formats=_collection_formats,
638
+ _host=_host,
639
+ _request_auth=_request_auth
640
+ )
641
+
642
+
643
+
644
+
645
+ @validate_call
646
+ def list_isos(
647
+ self,
648
+ list_isos_request_content: ListIsosRequestContent,
649
+ _request_timeout: Union[
650
+ None,
651
+ Annotated[StrictFloat, Field(gt=0)],
652
+ Tuple[
653
+ Annotated[StrictFloat, Field(gt=0)],
654
+ Annotated[StrictFloat, Field(gt=0)]
655
+ ]
656
+ ] = None,
657
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
658
+ _content_type: Optional[StrictStr] = None,
659
+ _headers: Optional[Dict[StrictStr, Any]] = None,
660
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
661
+ ) -> ListIsosResponseContent:
662
+ """list_isos
663
+
664
+ Retrieves the list of available ISO images for a VPS service
665
+
666
+ :param list_isos_request_content: (required)
667
+ :type list_isos_request_content: ListIsosRequestContent
668
+ :param _request_timeout: timeout setting for this request. If one
669
+ number provided, it will be total request
670
+ timeout. It can also be a pair (tuple) of
671
+ (connection, read) timeouts.
672
+ :type _request_timeout: int, tuple(int, int), optional
673
+ :param _request_auth: set to override the auth_settings for an a single
674
+ request; this effectively ignores the
675
+ authentication in the spec for a single request.
676
+ :type _request_auth: dict, optional
677
+ :param _content_type: force content-type for the request.
678
+ :type _content_type: str, Optional
679
+ :param _headers: set to override the headers for a single
680
+ request; this effectively ignores the headers
681
+ in the spec for a single request.
682
+ :type _headers: dict, optional
683
+ :param _host_index: set to override the host_index for a single
684
+ request; this effectively ignores the host_index
685
+ in the spec for a single request.
686
+ :type _host_index: int, optional
687
+ :return: Returns the result object.
688
+ """ # noqa: E501
689
+
690
+ _param = self._list_isos_serialize(
691
+ list_isos_request_content=list_isos_request_content,
692
+ _request_auth=_request_auth,
693
+ _content_type=_content_type,
694
+ _headers=_headers,
695
+ _host_index=_host_index
696
+ )
697
+
698
+ _response_types_map: Dict[str, Optional[str]] = {
699
+ '200': "ListIsosResponseContent",
700
+ '400': "BadRequestErrorResponseContent",
701
+ '401': "UnauthorizedErrorResponseContent",
702
+ '403': "ForbiddenErrorResponseContent",
703
+ '404': "ResourceNotFoundErrorResponseContent",
704
+ '422': "ValidationErrorResponseContent",
705
+ '429': "TooManyRequestsErrorResponseContent",
706
+ '500': "InternalServiceErrorResponseContent",
707
+ '503': "ServiceUnavailableErrorResponseContent",
708
+ }
709
+ response_data = self.api_client.call_api(
710
+ *_param,
711
+ _request_timeout=_request_timeout
712
+ )
713
+ response_data.read()
714
+ return self.api_client.response_deserialize(
715
+ response_data=response_data,
716
+ response_types_map=_response_types_map,
717
+ ).data
718
+
719
+
720
+ @validate_call
721
+ def list_isos_with_http_info(
722
+ self,
723
+ list_isos_request_content: ListIsosRequestContent,
724
+ _request_timeout: Union[
725
+ None,
726
+ Annotated[StrictFloat, Field(gt=0)],
727
+ Tuple[
728
+ Annotated[StrictFloat, Field(gt=0)],
729
+ Annotated[StrictFloat, Field(gt=0)]
730
+ ]
731
+ ] = None,
732
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
733
+ _content_type: Optional[StrictStr] = None,
734
+ _headers: Optional[Dict[StrictStr, Any]] = None,
735
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
736
+ ) -> ApiResponse[ListIsosResponseContent]:
737
+ """list_isos
738
+
739
+ Retrieves the list of available ISO images for a VPS service
740
+
741
+ :param list_isos_request_content: (required)
742
+ :type list_isos_request_content: ListIsosRequestContent
743
+ :param _request_timeout: timeout setting for this request. If one
744
+ number provided, it will be total request
745
+ timeout. It can also be a pair (tuple) of
746
+ (connection, read) timeouts.
747
+ :type _request_timeout: int, tuple(int, int), optional
748
+ :param _request_auth: set to override the auth_settings for an a single
749
+ request; this effectively ignores the
750
+ authentication in the spec for a single request.
751
+ :type _request_auth: dict, optional
752
+ :param _content_type: force content-type for the request.
753
+ :type _content_type: str, Optional
754
+ :param _headers: set to override the headers for a single
755
+ request; this effectively ignores the headers
756
+ in the spec for a single request.
757
+ :type _headers: dict, optional
758
+ :param _host_index: set to override the host_index for a single
759
+ request; this effectively ignores the host_index
760
+ in the spec for a single request.
761
+ :type _host_index: int, optional
762
+ :return: Returns the result object.
763
+ """ # noqa: E501
764
+
765
+ _param = self._list_isos_serialize(
766
+ list_isos_request_content=list_isos_request_content,
767
+ _request_auth=_request_auth,
768
+ _content_type=_content_type,
769
+ _headers=_headers,
770
+ _host_index=_host_index
771
+ )
772
+
773
+ _response_types_map: Dict[str, Optional[str]] = {
774
+ '200': "ListIsosResponseContent",
775
+ '400': "BadRequestErrorResponseContent",
776
+ '401': "UnauthorizedErrorResponseContent",
777
+ '403': "ForbiddenErrorResponseContent",
778
+ '404': "ResourceNotFoundErrorResponseContent",
779
+ '422': "ValidationErrorResponseContent",
780
+ '429': "TooManyRequestsErrorResponseContent",
781
+ '500': "InternalServiceErrorResponseContent",
782
+ '503': "ServiceUnavailableErrorResponseContent",
783
+ }
784
+ response_data = self.api_client.call_api(
785
+ *_param,
786
+ _request_timeout=_request_timeout
787
+ )
788
+ response_data.read()
789
+ return self.api_client.response_deserialize(
790
+ response_data=response_data,
791
+ response_types_map=_response_types_map,
792
+ )
793
+
794
+
795
+ @validate_call
796
+ def list_isos_without_preload_content(
797
+ self,
798
+ list_isos_request_content: ListIsosRequestContent,
799
+ _request_timeout: Union[
800
+ None,
801
+ Annotated[StrictFloat, Field(gt=0)],
802
+ Tuple[
803
+ Annotated[StrictFloat, Field(gt=0)],
804
+ Annotated[StrictFloat, Field(gt=0)]
805
+ ]
806
+ ] = None,
807
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
808
+ _content_type: Optional[StrictStr] = None,
809
+ _headers: Optional[Dict[StrictStr, Any]] = None,
810
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
811
+ ) -> RESTResponseType:
812
+ """list_isos
813
+
814
+ Retrieves the list of available ISO images for a VPS service
815
+
816
+ :param list_isos_request_content: (required)
817
+ :type list_isos_request_content: ListIsosRequestContent
818
+ :param _request_timeout: timeout setting for this request. If one
819
+ number provided, it will be total request
820
+ timeout. It can also be a pair (tuple) of
821
+ (connection, read) timeouts.
822
+ :type _request_timeout: int, tuple(int, int), optional
823
+ :param _request_auth: set to override the auth_settings for an a single
824
+ request; this effectively ignores the
825
+ authentication in the spec for a single request.
826
+ :type _request_auth: dict, optional
827
+ :param _content_type: force content-type for the request.
828
+ :type _content_type: str, Optional
829
+ :param _headers: set to override the headers for a single
830
+ request; this effectively ignores the headers
831
+ in the spec for a single request.
832
+ :type _headers: dict, optional
833
+ :param _host_index: set to override the host_index for a single
834
+ request; this effectively ignores the host_index
835
+ in the spec for a single request.
836
+ :type _host_index: int, optional
837
+ :return: Returns the result object.
838
+ """ # noqa: E501
839
+
840
+ _param = self._list_isos_serialize(
841
+ list_isos_request_content=list_isos_request_content,
842
+ _request_auth=_request_auth,
843
+ _content_type=_content_type,
844
+ _headers=_headers,
845
+ _host_index=_host_index
846
+ )
847
+
848
+ _response_types_map: Dict[str, Optional[str]] = {
849
+ '200': "ListIsosResponseContent",
850
+ '400': "BadRequestErrorResponseContent",
851
+ '401': "UnauthorizedErrorResponseContent",
852
+ '403': "ForbiddenErrorResponseContent",
853
+ '404': "ResourceNotFoundErrorResponseContent",
854
+ '422': "ValidationErrorResponseContent",
855
+ '429': "TooManyRequestsErrorResponseContent",
856
+ '500': "InternalServiceErrorResponseContent",
857
+ '503': "ServiceUnavailableErrorResponseContent",
858
+ }
859
+ response_data = self.api_client.call_api(
860
+ *_param,
861
+ _request_timeout=_request_timeout
862
+ )
863
+ return response_data.response
864
+
865
+
866
+ def _list_isos_serialize(
867
+ self,
868
+ list_isos_request_content,
869
+ _request_auth,
870
+ _content_type,
871
+ _headers,
872
+ _host_index,
873
+ ) -> RequestSerialized:
874
+
875
+ _host = None
876
+
877
+ _collection_formats: Dict[str, str] = {
878
+ }
879
+
880
+ _path_params: Dict[str, str] = {}
881
+ _query_params: List[Tuple[str, str]] = []
882
+ _header_params: Dict[str, Optional[str]] = _headers or {}
883
+ _form_params: List[Tuple[str, str]] = []
884
+ _files: Dict[
885
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
886
+ ] = {}
887
+ _body_params: Optional[bytes] = None
888
+
889
+ # process the path parameters
890
+ # process the query parameters
891
+ # process the header parameters
892
+ # process the form parameters
893
+ # process the body parameter
894
+ if list_isos_request_content is not None:
895
+ _body_params = list_isos_request_content
896
+
897
+
898
+ # set the HTTP header `Accept`
899
+ if 'Accept' not in _header_params:
900
+ _header_params['Accept'] = self.api_client.select_header_accept(
901
+ [
902
+ 'application/json'
903
+ ]
904
+ )
905
+
906
+ # set the HTTP header `Content-Type`
907
+ if _content_type:
908
+ _header_params['Content-Type'] = _content_type
909
+ else:
910
+ _default_content_type = (
911
+ self.api_client.select_header_content_type(
912
+ [
913
+ 'application/json'
914
+ ]
915
+ )
916
+ )
917
+ if _default_content_type is not None:
918
+ _header_params['Content-Type'] = _default_content_type
919
+
920
+ # authentication setting
921
+ _auth_settings: List[str] = [
922
+ 'BearerAuth'
923
+ ]
924
+
925
+ return self.api_client.param_serialize(
926
+ method='POST',
927
+ resource_path='/vps/list-isos',
928
+ path_params=_path_params,
929
+ query_params=_query_params,
930
+ header_params=_header_params,
931
+ body=_body_params,
932
+ post_params=_form_params,
933
+ files=_files,
934
+ auth_settings=_auth_settings,
935
+ collection_formats=_collection_formats,
936
+ _host=_host,
937
+ _request_auth=_request_auth
938
+ )
939
+
940
+
941
+
942
+
943
+ @validate_call
944
+ def list_reinstall_os(
945
+ self,
946
+ list_reinstall_os_request_content: ListReinstallOsRequestContent,
947
+ _request_timeout: Union[
948
+ None,
949
+ Annotated[StrictFloat, Field(gt=0)],
950
+ Tuple[
951
+ Annotated[StrictFloat, Field(gt=0)],
952
+ Annotated[StrictFloat, Field(gt=0)]
953
+ ]
954
+ ] = None,
955
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
956
+ _content_type: Optional[StrictStr] = None,
957
+ _headers: Optional[Dict[StrictStr, Any]] = None,
958
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
959
+ ) -> ListReinstallOsResponseContent:
960
+ """list_reinstall_os
961
+
962
+ [Under development] Retrieves the list of available OS images for VPS reinstallation
963
+
964
+ :param list_reinstall_os_request_content: (required)
965
+ :type list_reinstall_os_request_content: ListReinstallOsRequestContent
966
+ :param _request_timeout: timeout setting for this request. If one
967
+ number provided, it will be total request
968
+ timeout. It can also be a pair (tuple) of
969
+ (connection, read) timeouts.
970
+ :type _request_timeout: int, tuple(int, int), optional
971
+ :param _request_auth: set to override the auth_settings for an a single
972
+ request; this effectively ignores the
973
+ authentication in the spec for a single request.
974
+ :type _request_auth: dict, optional
975
+ :param _content_type: force content-type for the request.
976
+ :type _content_type: str, Optional
977
+ :param _headers: set to override the headers for a single
978
+ request; this effectively ignores the headers
979
+ in the spec for a single request.
980
+ :type _headers: dict, optional
981
+ :param _host_index: set to override the host_index for a single
982
+ request; this effectively ignores the host_index
983
+ in the spec for a single request.
984
+ :type _host_index: int, optional
985
+ :return: Returns the result object.
986
+ """ # noqa: E501
987
+
988
+ _param = self._list_reinstall_os_serialize(
989
+ list_reinstall_os_request_content=list_reinstall_os_request_content,
990
+ _request_auth=_request_auth,
991
+ _content_type=_content_type,
992
+ _headers=_headers,
993
+ _host_index=_host_index
994
+ )
995
+
996
+ _response_types_map: Dict[str, Optional[str]] = {
997
+ '200': "ListReinstallOsResponseContent",
998
+ '400': "BadRequestErrorResponseContent",
999
+ '401': "UnauthorizedErrorResponseContent",
1000
+ '403': "ForbiddenErrorResponseContent",
1001
+ '404': "ResourceNotFoundErrorResponseContent",
1002
+ '422': "ValidationErrorResponseContent",
1003
+ '429': "TooManyRequestsErrorResponseContent",
1004
+ '500': "InternalServiceErrorResponseContent",
1005
+ '503': "ServiceUnavailableErrorResponseContent",
1006
+ }
1007
+ response_data = self.api_client.call_api(
1008
+ *_param,
1009
+ _request_timeout=_request_timeout
1010
+ )
1011
+ response_data.read()
1012
+ return self.api_client.response_deserialize(
1013
+ response_data=response_data,
1014
+ response_types_map=_response_types_map,
1015
+ ).data
1016
+
1017
+
1018
+ @validate_call
1019
+ def list_reinstall_os_with_http_info(
1020
+ self,
1021
+ list_reinstall_os_request_content: ListReinstallOsRequestContent,
1022
+ _request_timeout: Union[
1023
+ None,
1024
+ Annotated[StrictFloat, Field(gt=0)],
1025
+ Tuple[
1026
+ Annotated[StrictFloat, Field(gt=0)],
1027
+ Annotated[StrictFloat, Field(gt=0)]
1028
+ ]
1029
+ ] = None,
1030
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1031
+ _content_type: Optional[StrictStr] = None,
1032
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1033
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1034
+ ) -> ApiResponse[ListReinstallOsResponseContent]:
1035
+ """list_reinstall_os
1036
+
1037
+ [Under development] Retrieves the list of available OS images for VPS reinstallation
1038
+
1039
+ :param list_reinstall_os_request_content: (required)
1040
+ :type list_reinstall_os_request_content: ListReinstallOsRequestContent
1041
+ :param _request_timeout: timeout setting for this request. If one
1042
+ number provided, it will be total request
1043
+ timeout. It can also be a pair (tuple) of
1044
+ (connection, read) timeouts.
1045
+ :type _request_timeout: int, tuple(int, int), optional
1046
+ :param _request_auth: set to override the auth_settings for an a single
1047
+ request; this effectively ignores the
1048
+ authentication in the spec for a single request.
1049
+ :type _request_auth: dict, optional
1050
+ :param _content_type: force content-type for the request.
1051
+ :type _content_type: str, Optional
1052
+ :param _headers: set to override the headers for a single
1053
+ request; this effectively ignores the headers
1054
+ in the spec for a single request.
1055
+ :type _headers: dict, optional
1056
+ :param _host_index: set to override the host_index for a single
1057
+ request; this effectively ignores the host_index
1058
+ in the spec for a single request.
1059
+ :type _host_index: int, optional
1060
+ :return: Returns the result object.
1061
+ """ # noqa: E501
1062
+
1063
+ _param = self._list_reinstall_os_serialize(
1064
+ list_reinstall_os_request_content=list_reinstall_os_request_content,
1065
+ _request_auth=_request_auth,
1066
+ _content_type=_content_type,
1067
+ _headers=_headers,
1068
+ _host_index=_host_index
1069
+ )
1070
+
1071
+ _response_types_map: Dict[str, Optional[str]] = {
1072
+ '200': "ListReinstallOsResponseContent",
1073
+ '400': "BadRequestErrorResponseContent",
1074
+ '401': "UnauthorizedErrorResponseContent",
1075
+ '403': "ForbiddenErrorResponseContent",
1076
+ '404': "ResourceNotFoundErrorResponseContent",
1077
+ '422': "ValidationErrorResponseContent",
1078
+ '429': "TooManyRequestsErrorResponseContent",
1079
+ '500': "InternalServiceErrorResponseContent",
1080
+ '503': "ServiceUnavailableErrorResponseContent",
1081
+ }
1082
+ response_data = self.api_client.call_api(
1083
+ *_param,
1084
+ _request_timeout=_request_timeout
1085
+ )
1086
+ response_data.read()
1087
+ return self.api_client.response_deserialize(
1088
+ response_data=response_data,
1089
+ response_types_map=_response_types_map,
1090
+ )
1091
+
1092
+
1093
+ @validate_call
1094
+ def list_reinstall_os_without_preload_content(
1095
+ self,
1096
+ list_reinstall_os_request_content: ListReinstallOsRequestContent,
1097
+ _request_timeout: Union[
1098
+ None,
1099
+ Annotated[StrictFloat, Field(gt=0)],
1100
+ Tuple[
1101
+ Annotated[StrictFloat, Field(gt=0)],
1102
+ Annotated[StrictFloat, Field(gt=0)]
1103
+ ]
1104
+ ] = None,
1105
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1106
+ _content_type: Optional[StrictStr] = None,
1107
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1108
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1109
+ ) -> RESTResponseType:
1110
+ """list_reinstall_os
1111
+
1112
+ [Under development] Retrieves the list of available OS images for VPS reinstallation
1113
+
1114
+ :param list_reinstall_os_request_content: (required)
1115
+ :type list_reinstall_os_request_content: ListReinstallOsRequestContent
1116
+ :param _request_timeout: timeout setting for this request. If one
1117
+ number provided, it will be total request
1118
+ timeout. It can also be a pair (tuple) of
1119
+ (connection, read) timeouts.
1120
+ :type _request_timeout: int, tuple(int, int), optional
1121
+ :param _request_auth: set to override the auth_settings for an a single
1122
+ request; this effectively ignores the
1123
+ authentication in the spec for a single request.
1124
+ :type _request_auth: dict, optional
1125
+ :param _content_type: force content-type for the request.
1126
+ :type _content_type: str, Optional
1127
+ :param _headers: set to override the headers for a single
1128
+ request; this effectively ignores the headers
1129
+ in the spec for a single request.
1130
+ :type _headers: dict, optional
1131
+ :param _host_index: set to override the host_index for a single
1132
+ request; this effectively ignores the host_index
1133
+ in the spec for a single request.
1134
+ :type _host_index: int, optional
1135
+ :return: Returns the result object.
1136
+ """ # noqa: E501
1137
+
1138
+ _param = self._list_reinstall_os_serialize(
1139
+ list_reinstall_os_request_content=list_reinstall_os_request_content,
1140
+ _request_auth=_request_auth,
1141
+ _content_type=_content_type,
1142
+ _headers=_headers,
1143
+ _host_index=_host_index
1144
+ )
1145
+
1146
+ _response_types_map: Dict[str, Optional[str]] = {
1147
+ '200': "ListReinstallOsResponseContent",
1148
+ '400': "BadRequestErrorResponseContent",
1149
+ '401': "UnauthorizedErrorResponseContent",
1150
+ '403': "ForbiddenErrorResponseContent",
1151
+ '404': "ResourceNotFoundErrorResponseContent",
1152
+ '422': "ValidationErrorResponseContent",
1153
+ '429': "TooManyRequestsErrorResponseContent",
1154
+ '500': "InternalServiceErrorResponseContent",
1155
+ '503': "ServiceUnavailableErrorResponseContent",
1156
+ }
1157
+ response_data = self.api_client.call_api(
1158
+ *_param,
1159
+ _request_timeout=_request_timeout
1160
+ )
1161
+ return response_data.response
1162
+
1163
+
1164
+ def _list_reinstall_os_serialize(
1165
+ self,
1166
+ list_reinstall_os_request_content,
1167
+ _request_auth,
1168
+ _content_type,
1169
+ _headers,
1170
+ _host_index,
1171
+ ) -> RequestSerialized:
1172
+
1173
+ _host = None
1174
+
1175
+ _collection_formats: Dict[str, str] = {
1176
+ }
1177
+
1178
+ _path_params: Dict[str, str] = {}
1179
+ _query_params: List[Tuple[str, str]] = []
1180
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1181
+ _form_params: List[Tuple[str, str]] = []
1182
+ _files: Dict[
1183
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1184
+ ] = {}
1185
+ _body_params: Optional[bytes] = None
1186
+
1187
+ # process the path parameters
1188
+ # process the query parameters
1189
+ # process the header parameters
1190
+ # process the form parameters
1191
+ # process the body parameter
1192
+ if list_reinstall_os_request_content is not None:
1193
+ _body_params = list_reinstall_os_request_content
1194
+
1195
+
1196
+ # set the HTTP header `Accept`
1197
+ if 'Accept' not in _header_params:
1198
+ _header_params['Accept'] = self.api_client.select_header_accept(
1199
+ [
1200
+ 'application/json'
1201
+ ]
1202
+ )
1203
+
1204
+ # set the HTTP header `Content-Type`
1205
+ if _content_type:
1206
+ _header_params['Content-Type'] = _content_type
1207
+ else:
1208
+ _default_content_type = (
1209
+ self.api_client.select_header_content_type(
1210
+ [
1211
+ 'application/json'
1212
+ ]
1213
+ )
1214
+ )
1215
+ if _default_content_type is not None:
1216
+ _header_params['Content-Type'] = _default_content_type
1217
+
1218
+ # authentication setting
1219
+ _auth_settings: List[str] = [
1220
+ 'BearerAuth'
1221
+ ]
1222
+
1223
+ return self.api_client.param_serialize(
1224
+ method='POST',
1225
+ resource_path='/vps/list-reinstall-images',
1226
+ path_params=_path_params,
1227
+ query_params=_query_params,
1228
+ header_params=_header_params,
1229
+ body=_body_params,
1230
+ post_params=_form_params,
1231
+ files=_files,
1232
+ auth_settings=_auth_settings,
1233
+ collection_formats=_collection_formats,
1234
+ _host=_host,
1235
+ _request_auth=_request_auth
1236
+ )
1237
+
1238
+
1239
+
1240
+
1241
+ @validate_call
1242
+ def list_vps_services(
1243
+ self,
1244
+ _request_timeout: Union[
1245
+ None,
1246
+ Annotated[StrictFloat, Field(gt=0)],
1247
+ Tuple[
1248
+ Annotated[StrictFloat, Field(gt=0)],
1249
+ Annotated[StrictFloat, Field(gt=0)]
1250
+ ]
1251
+ ] = None,
1252
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1253
+ _content_type: Optional[StrictStr] = None,
1254
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1255
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1256
+ ) -> ListVpsServicesResponseContent:
1257
+ """list_vps_services
1258
+
1259
+ Lists all VPS services accessible by the authenticated user
1260
+
1261
+ :param _request_timeout: timeout setting for this request. If one
1262
+ number provided, it will be total request
1263
+ timeout. It can also be a pair (tuple) of
1264
+ (connection, read) timeouts.
1265
+ :type _request_timeout: int, tuple(int, int), optional
1266
+ :param _request_auth: set to override the auth_settings for an a single
1267
+ request; this effectively ignores the
1268
+ authentication in the spec for a single request.
1269
+ :type _request_auth: dict, optional
1270
+ :param _content_type: force content-type for the request.
1271
+ :type _content_type: str, Optional
1272
+ :param _headers: set to override the headers for a single
1273
+ request; this effectively ignores the headers
1274
+ in the spec for a single request.
1275
+ :type _headers: dict, optional
1276
+ :param _host_index: set to override the host_index for a single
1277
+ request; this effectively ignores the host_index
1278
+ in the spec for a single request.
1279
+ :type _host_index: int, optional
1280
+ :return: Returns the result object.
1281
+ """ # noqa: E501
1282
+
1283
+ _param = self._list_vps_services_serialize(
1284
+ _request_auth=_request_auth,
1285
+ _content_type=_content_type,
1286
+ _headers=_headers,
1287
+ _host_index=_host_index
1288
+ )
1289
+
1290
+ _response_types_map: Dict[str, Optional[str]] = {
1291
+ '200': "ListVpsServicesResponseContent",
1292
+ '400': "BadRequestErrorResponseContent",
1293
+ '401': "UnauthorizedErrorResponseContent",
1294
+ '403': "ForbiddenErrorResponseContent",
1295
+ '429': "TooManyRequestsErrorResponseContent",
1296
+ '500': "InternalServiceErrorResponseContent",
1297
+ '503': "ServiceUnavailableErrorResponseContent",
1298
+ }
1299
+ response_data = self.api_client.call_api(
1300
+ *_param,
1301
+ _request_timeout=_request_timeout
1302
+ )
1303
+ response_data.read()
1304
+ return self.api_client.response_deserialize(
1305
+ response_data=response_data,
1306
+ response_types_map=_response_types_map,
1307
+ ).data
1308
+
1309
+
1310
+ @validate_call
1311
+ def list_vps_services_with_http_info(
1312
+ self,
1313
+ _request_timeout: Union[
1314
+ None,
1315
+ Annotated[StrictFloat, Field(gt=0)],
1316
+ Tuple[
1317
+ Annotated[StrictFloat, Field(gt=0)],
1318
+ Annotated[StrictFloat, Field(gt=0)]
1319
+ ]
1320
+ ] = None,
1321
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1322
+ _content_type: Optional[StrictStr] = None,
1323
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1324
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1325
+ ) -> ApiResponse[ListVpsServicesResponseContent]:
1326
+ """list_vps_services
1327
+
1328
+ Lists all VPS services accessible by the authenticated user
1329
+
1330
+ :param _request_timeout: timeout setting for this request. If one
1331
+ number provided, it will be total request
1332
+ timeout. It can also be a pair (tuple) of
1333
+ (connection, read) timeouts.
1334
+ :type _request_timeout: int, tuple(int, int), optional
1335
+ :param _request_auth: set to override the auth_settings for an a single
1336
+ request; this effectively ignores the
1337
+ authentication in the spec for a single request.
1338
+ :type _request_auth: dict, optional
1339
+ :param _content_type: force content-type for the request.
1340
+ :type _content_type: str, Optional
1341
+ :param _headers: set to override the headers for a single
1342
+ request; this effectively ignores the headers
1343
+ in the spec for a single request.
1344
+ :type _headers: dict, optional
1345
+ :param _host_index: set to override the host_index for a single
1346
+ request; this effectively ignores the host_index
1347
+ in the spec for a single request.
1348
+ :type _host_index: int, optional
1349
+ :return: Returns the result object.
1350
+ """ # noqa: E501
1351
+
1352
+ _param = self._list_vps_services_serialize(
1353
+ _request_auth=_request_auth,
1354
+ _content_type=_content_type,
1355
+ _headers=_headers,
1356
+ _host_index=_host_index
1357
+ )
1358
+
1359
+ _response_types_map: Dict[str, Optional[str]] = {
1360
+ '200': "ListVpsServicesResponseContent",
1361
+ '400': "BadRequestErrorResponseContent",
1362
+ '401': "UnauthorizedErrorResponseContent",
1363
+ '403': "ForbiddenErrorResponseContent",
1364
+ '429': "TooManyRequestsErrorResponseContent",
1365
+ '500': "InternalServiceErrorResponseContent",
1366
+ '503': "ServiceUnavailableErrorResponseContent",
1367
+ }
1368
+ response_data = self.api_client.call_api(
1369
+ *_param,
1370
+ _request_timeout=_request_timeout
1371
+ )
1372
+ response_data.read()
1373
+ return self.api_client.response_deserialize(
1374
+ response_data=response_data,
1375
+ response_types_map=_response_types_map,
1376
+ )
1377
+
1378
+
1379
+ @validate_call
1380
+ def list_vps_services_without_preload_content(
1381
+ self,
1382
+ _request_timeout: Union[
1383
+ None,
1384
+ Annotated[StrictFloat, Field(gt=0)],
1385
+ Tuple[
1386
+ Annotated[StrictFloat, Field(gt=0)],
1387
+ Annotated[StrictFloat, Field(gt=0)]
1388
+ ]
1389
+ ] = None,
1390
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1391
+ _content_type: Optional[StrictStr] = None,
1392
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1393
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1394
+ ) -> RESTResponseType:
1395
+ """list_vps_services
1396
+
1397
+ Lists all VPS services accessible by the authenticated user
1398
+
1399
+ :param _request_timeout: timeout setting for this request. If one
1400
+ number provided, it will be total request
1401
+ timeout. It can also be a pair (tuple) of
1402
+ (connection, read) timeouts.
1403
+ :type _request_timeout: int, tuple(int, int), optional
1404
+ :param _request_auth: set to override the auth_settings for an a single
1405
+ request; this effectively ignores the
1406
+ authentication in the spec for a single request.
1407
+ :type _request_auth: dict, optional
1408
+ :param _content_type: force content-type for the request.
1409
+ :type _content_type: str, Optional
1410
+ :param _headers: set to override the headers for a single
1411
+ request; this effectively ignores the headers
1412
+ in the spec for a single request.
1413
+ :type _headers: dict, optional
1414
+ :param _host_index: set to override the host_index for a single
1415
+ request; this effectively ignores the host_index
1416
+ in the spec for a single request.
1417
+ :type _host_index: int, optional
1418
+ :return: Returns the result object.
1419
+ """ # noqa: E501
1420
+
1421
+ _param = self._list_vps_services_serialize(
1422
+ _request_auth=_request_auth,
1423
+ _content_type=_content_type,
1424
+ _headers=_headers,
1425
+ _host_index=_host_index
1426
+ )
1427
+
1428
+ _response_types_map: Dict[str, Optional[str]] = {
1429
+ '200': "ListVpsServicesResponseContent",
1430
+ '400': "BadRequestErrorResponseContent",
1431
+ '401': "UnauthorizedErrorResponseContent",
1432
+ '403': "ForbiddenErrorResponseContent",
1433
+ '429': "TooManyRequestsErrorResponseContent",
1434
+ '500': "InternalServiceErrorResponseContent",
1435
+ '503': "ServiceUnavailableErrorResponseContent",
1436
+ }
1437
+ response_data = self.api_client.call_api(
1438
+ *_param,
1439
+ _request_timeout=_request_timeout
1440
+ )
1441
+ return response_data.response
1442
+
1443
+
1444
+ def _list_vps_services_serialize(
1445
+ self,
1446
+ _request_auth,
1447
+ _content_type,
1448
+ _headers,
1449
+ _host_index,
1450
+ ) -> RequestSerialized:
1451
+
1452
+ _host = None
1453
+
1454
+ _collection_formats: Dict[str, str] = {
1455
+ }
1456
+
1457
+ _path_params: Dict[str, str] = {}
1458
+ _query_params: List[Tuple[str, str]] = []
1459
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1460
+ _form_params: List[Tuple[str, str]] = []
1461
+ _files: Dict[
1462
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1463
+ ] = {}
1464
+ _body_params: Optional[bytes] = None
1465
+
1466
+ # process the path parameters
1467
+ # process the query parameters
1468
+ # process the header parameters
1469
+ # process the form parameters
1470
+ # process the body parameter
1471
+
1472
+
1473
+ # set the HTTP header `Accept`
1474
+ if 'Accept' not in _header_params:
1475
+ _header_params['Accept'] = self.api_client.select_header_accept(
1476
+ [
1477
+ 'application/json'
1478
+ ]
1479
+ )
1480
+
1481
+
1482
+ # authentication setting
1483
+ _auth_settings: List[str] = [
1484
+ 'BearerAuth'
1485
+ ]
1486
+
1487
+ return self.api_client.param_serialize(
1488
+ method='POST',
1489
+ resource_path='/vps/list-vps-services',
1490
+ path_params=_path_params,
1491
+ query_params=_query_params,
1492
+ header_params=_header_params,
1493
+ body=_body_params,
1494
+ post_params=_form_params,
1495
+ files=_files,
1496
+ auth_settings=_auth_settings,
1497
+ collection_formats=_collection_formats,
1498
+ _host=_host,
1499
+ _request_auth=_request_auth
1500
+ )
1501
+
1502
+
1503
+
1504
+
1505
+ @validate_call
1506
+ def mount_iso(
1507
+ self,
1508
+ mount_iso_request_content: MountIsoRequestContent,
1509
+ _request_timeout: Union[
1510
+ None,
1511
+ Annotated[StrictFloat, Field(gt=0)],
1512
+ Tuple[
1513
+ Annotated[StrictFloat, Field(gt=0)],
1514
+ Annotated[StrictFloat, Field(gt=0)]
1515
+ ]
1516
+ ] = None,
1517
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1518
+ _content_type: Optional[StrictStr] = None,
1519
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1520
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1521
+ ) -> MountIsoResponseContent:
1522
+ """mount_iso
1523
+
1524
+ Mounts an ISO image on a VPS service
1525
+
1526
+ :param mount_iso_request_content: (required)
1527
+ :type mount_iso_request_content: MountIsoRequestContent
1528
+ :param _request_timeout: timeout setting for this request. If one
1529
+ number provided, it will be total request
1530
+ timeout. It can also be a pair (tuple) of
1531
+ (connection, read) timeouts.
1532
+ :type _request_timeout: int, tuple(int, int), optional
1533
+ :param _request_auth: set to override the auth_settings for an a single
1534
+ request; this effectively ignores the
1535
+ authentication in the spec for a single request.
1536
+ :type _request_auth: dict, optional
1537
+ :param _content_type: force content-type for the request.
1538
+ :type _content_type: str, Optional
1539
+ :param _headers: set to override the headers for a single
1540
+ request; this effectively ignores the headers
1541
+ in the spec for a single request.
1542
+ :type _headers: dict, optional
1543
+ :param _host_index: set to override the host_index for a single
1544
+ request; this effectively ignores the host_index
1545
+ in the spec for a single request.
1546
+ :type _host_index: int, optional
1547
+ :return: Returns the result object.
1548
+ """ # noqa: E501
1549
+
1550
+ _param = self._mount_iso_serialize(
1551
+ mount_iso_request_content=mount_iso_request_content,
1552
+ _request_auth=_request_auth,
1553
+ _content_type=_content_type,
1554
+ _headers=_headers,
1555
+ _host_index=_host_index
1556
+ )
1557
+
1558
+ _response_types_map: Dict[str, Optional[str]] = {
1559
+ '200': "MountIsoResponseContent",
1560
+ '400': "BadRequestErrorResponseContent",
1561
+ '401': "UnauthorizedErrorResponseContent",
1562
+ '403': "ForbiddenErrorResponseContent",
1563
+ '404': "ResourceNotFoundErrorResponseContent",
1564
+ '422': "ValidationErrorResponseContent",
1565
+ '429': "TooManyRequestsErrorResponseContent",
1566
+ '500': "InternalServiceErrorResponseContent",
1567
+ '503': "ServiceUnavailableErrorResponseContent",
1568
+ }
1569
+ response_data = self.api_client.call_api(
1570
+ *_param,
1571
+ _request_timeout=_request_timeout
1572
+ )
1573
+ response_data.read()
1574
+ return self.api_client.response_deserialize(
1575
+ response_data=response_data,
1576
+ response_types_map=_response_types_map,
1577
+ ).data
1578
+
1579
+
1580
+ @validate_call
1581
+ def mount_iso_with_http_info(
1582
+ self,
1583
+ mount_iso_request_content: MountIsoRequestContent,
1584
+ _request_timeout: Union[
1585
+ None,
1586
+ Annotated[StrictFloat, Field(gt=0)],
1587
+ Tuple[
1588
+ Annotated[StrictFloat, Field(gt=0)],
1589
+ Annotated[StrictFloat, Field(gt=0)]
1590
+ ]
1591
+ ] = None,
1592
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1593
+ _content_type: Optional[StrictStr] = None,
1594
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1595
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1596
+ ) -> ApiResponse[MountIsoResponseContent]:
1597
+ """mount_iso
1598
+
1599
+ Mounts an ISO image on a VPS service
1600
+
1601
+ :param mount_iso_request_content: (required)
1602
+ :type mount_iso_request_content: MountIsoRequestContent
1603
+ :param _request_timeout: timeout setting for this request. If one
1604
+ number provided, it will be total request
1605
+ timeout. It can also be a pair (tuple) of
1606
+ (connection, read) timeouts.
1607
+ :type _request_timeout: int, tuple(int, int), optional
1608
+ :param _request_auth: set to override the auth_settings for an a single
1609
+ request; this effectively ignores the
1610
+ authentication in the spec for a single request.
1611
+ :type _request_auth: dict, optional
1612
+ :param _content_type: force content-type for the request.
1613
+ :type _content_type: str, Optional
1614
+ :param _headers: set to override the headers for a single
1615
+ request; this effectively ignores the headers
1616
+ in the spec for a single request.
1617
+ :type _headers: dict, optional
1618
+ :param _host_index: set to override the host_index for a single
1619
+ request; this effectively ignores the host_index
1620
+ in the spec for a single request.
1621
+ :type _host_index: int, optional
1622
+ :return: Returns the result object.
1623
+ """ # noqa: E501
1624
+
1625
+ _param = self._mount_iso_serialize(
1626
+ mount_iso_request_content=mount_iso_request_content,
1627
+ _request_auth=_request_auth,
1628
+ _content_type=_content_type,
1629
+ _headers=_headers,
1630
+ _host_index=_host_index
1631
+ )
1632
+
1633
+ _response_types_map: Dict[str, Optional[str]] = {
1634
+ '200': "MountIsoResponseContent",
1635
+ '400': "BadRequestErrorResponseContent",
1636
+ '401': "UnauthorizedErrorResponseContent",
1637
+ '403': "ForbiddenErrorResponseContent",
1638
+ '404': "ResourceNotFoundErrorResponseContent",
1639
+ '422': "ValidationErrorResponseContent",
1640
+ '429': "TooManyRequestsErrorResponseContent",
1641
+ '500': "InternalServiceErrorResponseContent",
1642
+ '503': "ServiceUnavailableErrorResponseContent",
1643
+ }
1644
+ response_data = self.api_client.call_api(
1645
+ *_param,
1646
+ _request_timeout=_request_timeout
1647
+ )
1648
+ response_data.read()
1649
+ return self.api_client.response_deserialize(
1650
+ response_data=response_data,
1651
+ response_types_map=_response_types_map,
1652
+ )
1653
+
1654
+
1655
+ @validate_call
1656
+ def mount_iso_without_preload_content(
1657
+ self,
1658
+ mount_iso_request_content: MountIsoRequestContent,
1659
+ _request_timeout: Union[
1660
+ None,
1661
+ Annotated[StrictFloat, Field(gt=0)],
1662
+ Tuple[
1663
+ Annotated[StrictFloat, Field(gt=0)],
1664
+ Annotated[StrictFloat, Field(gt=0)]
1665
+ ]
1666
+ ] = None,
1667
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1668
+ _content_type: Optional[StrictStr] = None,
1669
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1670
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1671
+ ) -> RESTResponseType:
1672
+ """mount_iso
1673
+
1674
+ Mounts an ISO image on a VPS service
1675
+
1676
+ :param mount_iso_request_content: (required)
1677
+ :type mount_iso_request_content: MountIsoRequestContent
1678
+ :param _request_timeout: timeout setting for this request. If one
1679
+ number provided, it will be total request
1680
+ timeout. It can also be a pair (tuple) of
1681
+ (connection, read) timeouts.
1682
+ :type _request_timeout: int, tuple(int, int), optional
1683
+ :param _request_auth: set to override the auth_settings for an a single
1684
+ request; this effectively ignores the
1685
+ authentication in the spec for a single request.
1686
+ :type _request_auth: dict, optional
1687
+ :param _content_type: force content-type for the request.
1688
+ :type _content_type: str, Optional
1689
+ :param _headers: set to override the headers for a single
1690
+ request; this effectively ignores the headers
1691
+ in the spec for a single request.
1692
+ :type _headers: dict, optional
1693
+ :param _host_index: set to override the host_index for a single
1694
+ request; this effectively ignores the host_index
1695
+ in the spec for a single request.
1696
+ :type _host_index: int, optional
1697
+ :return: Returns the result object.
1698
+ """ # noqa: E501
1699
+
1700
+ _param = self._mount_iso_serialize(
1701
+ mount_iso_request_content=mount_iso_request_content,
1702
+ _request_auth=_request_auth,
1703
+ _content_type=_content_type,
1704
+ _headers=_headers,
1705
+ _host_index=_host_index
1706
+ )
1707
+
1708
+ _response_types_map: Dict[str, Optional[str]] = {
1709
+ '200': "MountIsoResponseContent",
1710
+ '400': "BadRequestErrorResponseContent",
1711
+ '401': "UnauthorizedErrorResponseContent",
1712
+ '403': "ForbiddenErrorResponseContent",
1713
+ '404': "ResourceNotFoundErrorResponseContent",
1714
+ '422': "ValidationErrorResponseContent",
1715
+ '429': "TooManyRequestsErrorResponseContent",
1716
+ '500': "InternalServiceErrorResponseContent",
1717
+ '503': "ServiceUnavailableErrorResponseContent",
1718
+ }
1719
+ response_data = self.api_client.call_api(
1720
+ *_param,
1721
+ _request_timeout=_request_timeout
1722
+ )
1723
+ return response_data.response
1724
+
1725
+
1726
+ def _mount_iso_serialize(
1727
+ self,
1728
+ mount_iso_request_content,
1729
+ _request_auth,
1730
+ _content_type,
1731
+ _headers,
1732
+ _host_index,
1733
+ ) -> RequestSerialized:
1734
+
1735
+ _host = None
1736
+
1737
+ _collection_formats: Dict[str, str] = {
1738
+ }
1739
+
1740
+ _path_params: Dict[str, str] = {}
1741
+ _query_params: List[Tuple[str, str]] = []
1742
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1743
+ _form_params: List[Tuple[str, str]] = []
1744
+ _files: Dict[
1745
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1746
+ ] = {}
1747
+ _body_params: Optional[bytes] = None
1748
+
1749
+ # process the path parameters
1750
+ # process the query parameters
1751
+ # process the header parameters
1752
+ # process the form parameters
1753
+ # process the body parameter
1754
+ if mount_iso_request_content is not None:
1755
+ _body_params = mount_iso_request_content
1756
+
1757
+
1758
+ # set the HTTP header `Accept`
1759
+ if 'Accept' not in _header_params:
1760
+ _header_params['Accept'] = self.api_client.select_header_accept(
1761
+ [
1762
+ 'application/json'
1763
+ ]
1764
+ )
1765
+
1766
+ # set the HTTP header `Content-Type`
1767
+ if _content_type:
1768
+ _header_params['Content-Type'] = _content_type
1769
+ else:
1770
+ _default_content_type = (
1771
+ self.api_client.select_header_content_type(
1772
+ [
1773
+ 'application/json'
1774
+ ]
1775
+ )
1776
+ )
1777
+ if _default_content_type is not None:
1778
+ _header_params['Content-Type'] = _default_content_type
1779
+
1780
+ # authentication setting
1781
+ _auth_settings: List[str] = [
1782
+ 'BearerAuth'
1783
+ ]
1784
+
1785
+ return self.api_client.param_serialize(
1786
+ method='POST',
1787
+ resource_path='/vps/mount-iso',
1788
+ path_params=_path_params,
1789
+ query_params=_query_params,
1790
+ header_params=_header_params,
1791
+ body=_body_params,
1792
+ post_params=_form_params,
1793
+ files=_files,
1794
+ auth_settings=_auth_settings,
1795
+ collection_formats=_collection_formats,
1796
+ _host=_host,
1797
+ _request_auth=_request_auth
1798
+ )
1799
+
1800
+
1801
+
1802
+
1803
+ @validate_call
1804
+ def trigger_reinstall(
1805
+ self,
1806
+ trigger_reinstall_request_content: TriggerReinstallRequestContent,
1807
+ _request_timeout: Union[
1808
+ None,
1809
+ Annotated[StrictFloat, Field(gt=0)],
1810
+ Tuple[
1811
+ Annotated[StrictFloat, Field(gt=0)],
1812
+ Annotated[StrictFloat, Field(gt=0)]
1813
+ ]
1814
+ ] = None,
1815
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1816
+ _content_type: Optional[StrictStr] = None,
1817
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1818
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1819
+ ) -> TriggerReinstallResponseContent:
1820
+ """trigger_reinstall
1821
+
1822
+ Triggers a VPS reinstallation with the specified OS template
1823
+
1824
+ :param trigger_reinstall_request_content: (required)
1825
+ :type trigger_reinstall_request_content: TriggerReinstallRequestContent
1826
+ :param _request_timeout: timeout setting for this request. If one
1827
+ number provided, it will be total request
1828
+ timeout. It can also be a pair (tuple) of
1829
+ (connection, read) timeouts.
1830
+ :type _request_timeout: int, tuple(int, int), optional
1831
+ :param _request_auth: set to override the auth_settings for an a single
1832
+ request; this effectively ignores the
1833
+ authentication in the spec for a single request.
1834
+ :type _request_auth: dict, optional
1835
+ :param _content_type: force content-type for the request.
1836
+ :type _content_type: str, Optional
1837
+ :param _headers: set to override the headers for a single
1838
+ request; this effectively ignores the headers
1839
+ in the spec for a single request.
1840
+ :type _headers: dict, optional
1841
+ :param _host_index: set to override the host_index for a single
1842
+ request; this effectively ignores the host_index
1843
+ in the spec for a single request.
1844
+ :type _host_index: int, optional
1845
+ :return: Returns the result object.
1846
+ """ # noqa: E501
1847
+
1848
+ _param = self._trigger_reinstall_serialize(
1849
+ trigger_reinstall_request_content=trigger_reinstall_request_content,
1850
+ _request_auth=_request_auth,
1851
+ _content_type=_content_type,
1852
+ _headers=_headers,
1853
+ _host_index=_host_index
1854
+ )
1855
+
1856
+ _response_types_map: Dict[str, Optional[str]] = {
1857
+ '200': "TriggerReinstallResponseContent",
1858
+ '400': "BadRequestErrorResponseContent",
1859
+ '401': "UnauthorizedErrorResponseContent",
1860
+ '403': "ForbiddenErrorResponseContent",
1861
+ '404': "ResourceNotFoundErrorResponseContent",
1862
+ '422': "ValidationErrorResponseContent",
1863
+ '429': "TooManyRequestsErrorResponseContent",
1864
+ '500': "InternalServiceErrorResponseContent",
1865
+ '503': "ServiceUnavailableErrorResponseContent",
1866
+ }
1867
+ response_data = self.api_client.call_api(
1868
+ *_param,
1869
+ _request_timeout=_request_timeout
1870
+ )
1871
+ response_data.read()
1872
+ return self.api_client.response_deserialize(
1873
+ response_data=response_data,
1874
+ response_types_map=_response_types_map,
1875
+ ).data
1876
+
1877
+
1878
+ @validate_call
1879
+ def trigger_reinstall_with_http_info(
1880
+ self,
1881
+ trigger_reinstall_request_content: TriggerReinstallRequestContent,
1882
+ _request_timeout: Union[
1883
+ None,
1884
+ Annotated[StrictFloat, Field(gt=0)],
1885
+ Tuple[
1886
+ Annotated[StrictFloat, Field(gt=0)],
1887
+ Annotated[StrictFloat, Field(gt=0)]
1888
+ ]
1889
+ ] = None,
1890
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1891
+ _content_type: Optional[StrictStr] = None,
1892
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1893
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1894
+ ) -> ApiResponse[TriggerReinstallResponseContent]:
1895
+ """trigger_reinstall
1896
+
1897
+ Triggers a VPS reinstallation with the specified OS template
1898
+
1899
+ :param trigger_reinstall_request_content: (required)
1900
+ :type trigger_reinstall_request_content: TriggerReinstallRequestContent
1901
+ :param _request_timeout: timeout setting for this request. If one
1902
+ number provided, it will be total request
1903
+ timeout. It can also be a pair (tuple) of
1904
+ (connection, read) timeouts.
1905
+ :type _request_timeout: int, tuple(int, int), optional
1906
+ :param _request_auth: set to override the auth_settings for an a single
1907
+ request; this effectively ignores the
1908
+ authentication in the spec for a single request.
1909
+ :type _request_auth: dict, optional
1910
+ :param _content_type: force content-type for the request.
1911
+ :type _content_type: str, Optional
1912
+ :param _headers: set to override the headers for a single
1913
+ request; this effectively ignores the headers
1914
+ in the spec for a single request.
1915
+ :type _headers: dict, optional
1916
+ :param _host_index: set to override the host_index for a single
1917
+ request; this effectively ignores the host_index
1918
+ in the spec for a single request.
1919
+ :type _host_index: int, optional
1920
+ :return: Returns the result object.
1921
+ """ # noqa: E501
1922
+
1923
+ _param = self._trigger_reinstall_serialize(
1924
+ trigger_reinstall_request_content=trigger_reinstall_request_content,
1925
+ _request_auth=_request_auth,
1926
+ _content_type=_content_type,
1927
+ _headers=_headers,
1928
+ _host_index=_host_index
1929
+ )
1930
+
1931
+ _response_types_map: Dict[str, Optional[str]] = {
1932
+ '200': "TriggerReinstallResponseContent",
1933
+ '400': "BadRequestErrorResponseContent",
1934
+ '401': "UnauthorizedErrorResponseContent",
1935
+ '403': "ForbiddenErrorResponseContent",
1936
+ '404': "ResourceNotFoundErrorResponseContent",
1937
+ '422': "ValidationErrorResponseContent",
1938
+ '429': "TooManyRequestsErrorResponseContent",
1939
+ '500': "InternalServiceErrorResponseContent",
1940
+ '503': "ServiceUnavailableErrorResponseContent",
1941
+ }
1942
+ response_data = self.api_client.call_api(
1943
+ *_param,
1944
+ _request_timeout=_request_timeout
1945
+ )
1946
+ response_data.read()
1947
+ return self.api_client.response_deserialize(
1948
+ response_data=response_data,
1949
+ response_types_map=_response_types_map,
1950
+ )
1951
+
1952
+
1953
+ @validate_call
1954
+ def trigger_reinstall_without_preload_content(
1955
+ self,
1956
+ trigger_reinstall_request_content: TriggerReinstallRequestContent,
1957
+ _request_timeout: Union[
1958
+ None,
1959
+ Annotated[StrictFloat, Field(gt=0)],
1960
+ Tuple[
1961
+ Annotated[StrictFloat, Field(gt=0)],
1962
+ Annotated[StrictFloat, Field(gt=0)]
1963
+ ]
1964
+ ] = None,
1965
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1966
+ _content_type: Optional[StrictStr] = None,
1967
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1968
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1969
+ ) -> RESTResponseType:
1970
+ """trigger_reinstall
1971
+
1972
+ Triggers a VPS reinstallation with the specified OS template
1973
+
1974
+ :param trigger_reinstall_request_content: (required)
1975
+ :type trigger_reinstall_request_content: TriggerReinstallRequestContent
1976
+ :param _request_timeout: timeout setting for this request. If one
1977
+ number provided, it will be total request
1978
+ timeout. It can also be a pair (tuple) of
1979
+ (connection, read) timeouts.
1980
+ :type _request_timeout: int, tuple(int, int), optional
1981
+ :param _request_auth: set to override the auth_settings for an a single
1982
+ request; this effectively ignores the
1983
+ authentication in the spec for a single request.
1984
+ :type _request_auth: dict, optional
1985
+ :param _content_type: force content-type for the request.
1986
+ :type _content_type: str, Optional
1987
+ :param _headers: set to override the headers for a single
1988
+ request; this effectively ignores the headers
1989
+ in the spec for a single request.
1990
+ :type _headers: dict, optional
1991
+ :param _host_index: set to override the host_index for a single
1992
+ request; this effectively ignores the host_index
1993
+ in the spec for a single request.
1994
+ :type _host_index: int, optional
1995
+ :return: Returns the result object.
1996
+ """ # noqa: E501
1997
+
1998
+ _param = self._trigger_reinstall_serialize(
1999
+ trigger_reinstall_request_content=trigger_reinstall_request_content,
2000
+ _request_auth=_request_auth,
2001
+ _content_type=_content_type,
2002
+ _headers=_headers,
2003
+ _host_index=_host_index
2004
+ )
2005
+
2006
+ _response_types_map: Dict[str, Optional[str]] = {
2007
+ '200': "TriggerReinstallResponseContent",
2008
+ '400': "BadRequestErrorResponseContent",
2009
+ '401': "UnauthorizedErrorResponseContent",
2010
+ '403': "ForbiddenErrorResponseContent",
2011
+ '404': "ResourceNotFoundErrorResponseContent",
2012
+ '422': "ValidationErrorResponseContent",
2013
+ '429': "TooManyRequestsErrorResponseContent",
2014
+ '500': "InternalServiceErrorResponseContent",
2015
+ '503': "ServiceUnavailableErrorResponseContent",
2016
+ }
2017
+ response_data = self.api_client.call_api(
2018
+ *_param,
2019
+ _request_timeout=_request_timeout
2020
+ )
2021
+ return response_data.response
2022
+
2023
+
2024
+ def _trigger_reinstall_serialize(
2025
+ self,
2026
+ trigger_reinstall_request_content,
2027
+ _request_auth,
2028
+ _content_type,
2029
+ _headers,
2030
+ _host_index,
2031
+ ) -> RequestSerialized:
2032
+
2033
+ _host = None
2034
+
2035
+ _collection_formats: Dict[str, str] = {
2036
+ }
2037
+
2038
+ _path_params: Dict[str, str] = {}
2039
+ _query_params: List[Tuple[str, str]] = []
2040
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2041
+ _form_params: List[Tuple[str, str]] = []
2042
+ _files: Dict[
2043
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2044
+ ] = {}
2045
+ _body_params: Optional[bytes] = None
2046
+
2047
+ # process the path parameters
2048
+ # process the query parameters
2049
+ # process the header parameters
2050
+ # process the form parameters
2051
+ # process the body parameter
2052
+ if trigger_reinstall_request_content is not None:
2053
+ _body_params = trigger_reinstall_request_content
2054
+
2055
+
2056
+ # set the HTTP header `Accept`
2057
+ if 'Accept' not in _header_params:
2058
+ _header_params['Accept'] = self.api_client.select_header_accept(
2059
+ [
2060
+ 'application/json'
2061
+ ]
2062
+ )
2063
+
2064
+ # set the HTTP header `Content-Type`
2065
+ if _content_type:
2066
+ _header_params['Content-Type'] = _content_type
2067
+ else:
2068
+ _default_content_type = (
2069
+ self.api_client.select_header_content_type(
2070
+ [
2071
+ 'application/json'
2072
+ ]
2073
+ )
2074
+ )
2075
+ if _default_content_type is not None:
2076
+ _header_params['Content-Type'] = _default_content_type
2077
+
2078
+ # authentication setting
2079
+ _auth_settings: List[str] = [
2080
+ 'BearerAuth'
2081
+ ]
2082
+
2083
+ return self.api_client.param_serialize(
2084
+ method='POST',
2085
+ resource_path='/vps/trigger-reinstall',
2086
+ path_params=_path_params,
2087
+ query_params=_query_params,
2088
+ header_params=_header_params,
2089
+ body=_body_params,
2090
+ post_params=_form_params,
2091
+ files=_files,
2092
+ auth_settings=_auth_settings,
2093
+ collection_formats=_collection_formats,
2094
+ _host=_host,
2095
+ _request_auth=_request_auth
2096
+ )
2097
+
2098
+
2099
+
2100
+
2101
+ @validate_call
2102
+ def update_vps_config(
2103
+ self,
2104
+ update_vps_config_request_content: UpdateVpsConfigRequestContent,
2105
+ _request_timeout: Union[
2106
+ None,
2107
+ Annotated[StrictFloat, Field(gt=0)],
2108
+ Tuple[
2109
+ Annotated[StrictFloat, Field(gt=0)],
2110
+ Annotated[StrictFloat, Field(gt=0)]
2111
+ ]
2112
+ ] = None,
2113
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2114
+ _content_type: Optional[StrictStr] = None,
2115
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2116
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2117
+ ) -> UpdateVpsConfigResponseContent:
2118
+ """update_vps_config
2119
+
2120
+ Updates VPS configuration settings such as name, hostname, auto-start, boot order, and CD-ROM
2121
+
2122
+ :param update_vps_config_request_content: (required)
2123
+ :type update_vps_config_request_content: UpdateVpsConfigRequestContent
2124
+ :param _request_timeout: timeout setting for this request. If one
2125
+ number provided, it will be total request
2126
+ timeout. It can also be a pair (tuple) of
2127
+ (connection, read) timeouts.
2128
+ :type _request_timeout: int, tuple(int, int), optional
2129
+ :param _request_auth: set to override the auth_settings for an a single
2130
+ request; this effectively ignores the
2131
+ authentication in the spec for a single request.
2132
+ :type _request_auth: dict, optional
2133
+ :param _content_type: force content-type for the request.
2134
+ :type _content_type: str, Optional
2135
+ :param _headers: set to override the headers for a single
2136
+ request; this effectively ignores the headers
2137
+ in the spec for a single request.
2138
+ :type _headers: dict, optional
2139
+ :param _host_index: set to override the host_index for a single
2140
+ request; this effectively ignores the host_index
2141
+ in the spec for a single request.
2142
+ :type _host_index: int, optional
2143
+ :return: Returns the result object.
2144
+ """ # noqa: E501
2145
+
2146
+ _param = self._update_vps_config_serialize(
2147
+ update_vps_config_request_content=update_vps_config_request_content,
2148
+ _request_auth=_request_auth,
2149
+ _content_type=_content_type,
2150
+ _headers=_headers,
2151
+ _host_index=_host_index
2152
+ )
2153
+
2154
+ _response_types_map: Dict[str, Optional[str]] = {
2155
+ '200': "UpdateVpsConfigResponseContent",
2156
+ '400': "BadRequestErrorResponseContent",
2157
+ '401': "UnauthorizedErrorResponseContent",
2158
+ '403': "ForbiddenErrorResponseContent",
2159
+ '404': "ResourceNotFoundErrorResponseContent",
2160
+ '409': "InvalidStateErrorResponseContent",
2161
+ '422': "ValidationErrorResponseContent",
2162
+ '429': "TooManyRequestsErrorResponseContent",
2163
+ '500': "InternalServiceErrorResponseContent",
2164
+ '503': "ServiceUnavailableErrorResponseContent",
2165
+ }
2166
+ response_data = self.api_client.call_api(
2167
+ *_param,
2168
+ _request_timeout=_request_timeout
2169
+ )
2170
+ response_data.read()
2171
+ return self.api_client.response_deserialize(
2172
+ response_data=response_data,
2173
+ response_types_map=_response_types_map,
2174
+ ).data
2175
+
2176
+
2177
+ @validate_call
2178
+ def update_vps_config_with_http_info(
2179
+ self,
2180
+ update_vps_config_request_content: UpdateVpsConfigRequestContent,
2181
+ _request_timeout: Union[
2182
+ None,
2183
+ Annotated[StrictFloat, Field(gt=0)],
2184
+ Tuple[
2185
+ Annotated[StrictFloat, Field(gt=0)],
2186
+ Annotated[StrictFloat, Field(gt=0)]
2187
+ ]
2188
+ ] = None,
2189
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2190
+ _content_type: Optional[StrictStr] = None,
2191
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2192
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2193
+ ) -> ApiResponse[UpdateVpsConfigResponseContent]:
2194
+ """update_vps_config
2195
+
2196
+ Updates VPS configuration settings such as name, hostname, auto-start, boot order, and CD-ROM
2197
+
2198
+ :param update_vps_config_request_content: (required)
2199
+ :type update_vps_config_request_content: UpdateVpsConfigRequestContent
2200
+ :param _request_timeout: timeout setting for this request. If one
2201
+ number provided, it will be total request
2202
+ timeout. It can also be a pair (tuple) of
2203
+ (connection, read) timeouts.
2204
+ :type _request_timeout: int, tuple(int, int), optional
2205
+ :param _request_auth: set to override the auth_settings for an a single
2206
+ request; this effectively ignores the
2207
+ authentication in the spec for a single request.
2208
+ :type _request_auth: dict, optional
2209
+ :param _content_type: force content-type for the request.
2210
+ :type _content_type: str, Optional
2211
+ :param _headers: set to override the headers for a single
2212
+ request; this effectively ignores the headers
2213
+ in the spec for a single request.
2214
+ :type _headers: dict, optional
2215
+ :param _host_index: set to override the host_index for a single
2216
+ request; this effectively ignores the host_index
2217
+ in the spec for a single request.
2218
+ :type _host_index: int, optional
2219
+ :return: Returns the result object.
2220
+ """ # noqa: E501
2221
+
2222
+ _param = self._update_vps_config_serialize(
2223
+ update_vps_config_request_content=update_vps_config_request_content,
2224
+ _request_auth=_request_auth,
2225
+ _content_type=_content_type,
2226
+ _headers=_headers,
2227
+ _host_index=_host_index
2228
+ )
2229
+
2230
+ _response_types_map: Dict[str, Optional[str]] = {
2231
+ '200': "UpdateVpsConfigResponseContent",
2232
+ '400': "BadRequestErrorResponseContent",
2233
+ '401': "UnauthorizedErrorResponseContent",
2234
+ '403': "ForbiddenErrorResponseContent",
2235
+ '404': "ResourceNotFoundErrorResponseContent",
2236
+ '409': "InvalidStateErrorResponseContent",
2237
+ '422': "ValidationErrorResponseContent",
2238
+ '429': "TooManyRequestsErrorResponseContent",
2239
+ '500': "InternalServiceErrorResponseContent",
2240
+ '503': "ServiceUnavailableErrorResponseContent",
2241
+ }
2242
+ response_data = self.api_client.call_api(
2243
+ *_param,
2244
+ _request_timeout=_request_timeout
2245
+ )
2246
+ response_data.read()
2247
+ return self.api_client.response_deserialize(
2248
+ response_data=response_data,
2249
+ response_types_map=_response_types_map,
2250
+ )
2251
+
2252
+
2253
+ @validate_call
2254
+ def update_vps_config_without_preload_content(
2255
+ self,
2256
+ update_vps_config_request_content: UpdateVpsConfigRequestContent,
2257
+ _request_timeout: Union[
2258
+ None,
2259
+ Annotated[StrictFloat, Field(gt=0)],
2260
+ Tuple[
2261
+ Annotated[StrictFloat, Field(gt=0)],
2262
+ Annotated[StrictFloat, Field(gt=0)]
2263
+ ]
2264
+ ] = None,
2265
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2266
+ _content_type: Optional[StrictStr] = None,
2267
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2268
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2269
+ ) -> RESTResponseType:
2270
+ """update_vps_config
2271
+
2272
+ Updates VPS configuration settings such as name, hostname, auto-start, boot order, and CD-ROM
2273
+
2274
+ :param update_vps_config_request_content: (required)
2275
+ :type update_vps_config_request_content: UpdateVpsConfigRequestContent
2276
+ :param _request_timeout: timeout setting for this request. If one
2277
+ number provided, it will be total request
2278
+ timeout. It can also be a pair (tuple) of
2279
+ (connection, read) timeouts.
2280
+ :type _request_timeout: int, tuple(int, int), optional
2281
+ :param _request_auth: set to override the auth_settings for an a single
2282
+ request; this effectively ignores the
2283
+ authentication in the spec for a single request.
2284
+ :type _request_auth: dict, optional
2285
+ :param _content_type: force content-type for the request.
2286
+ :type _content_type: str, Optional
2287
+ :param _headers: set to override the headers for a single
2288
+ request; this effectively ignores the headers
2289
+ in the spec for a single request.
2290
+ :type _headers: dict, optional
2291
+ :param _host_index: set to override the host_index for a single
2292
+ request; this effectively ignores the host_index
2293
+ in the spec for a single request.
2294
+ :type _host_index: int, optional
2295
+ :return: Returns the result object.
2296
+ """ # noqa: E501
2297
+
2298
+ _param = self._update_vps_config_serialize(
2299
+ update_vps_config_request_content=update_vps_config_request_content,
2300
+ _request_auth=_request_auth,
2301
+ _content_type=_content_type,
2302
+ _headers=_headers,
2303
+ _host_index=_host_index
2304
+ )
2305
+
2306
+ _response_types_map: Dict[str, Optional[str]] = {
2307
+ '200': "UpdateVpsConfigResponseContent",
2308
+ '400': "BadRequestErrorResponseContent",
2309
+ '401': "UnauthorizedErrorResponseContent",
2310
+ '403': "ForbiddenErrorResponseContent",
2311
+ '404': "ResourceNotFoundErrorResponseContent",
2312
+ '409': "InvalidStateErrorResponseContent",
2313
+ '422': "ValidationErrorResponseContent",
2314
+ '429': "TooManyRequestsErrorResponseContent",
2315
+ '500': "InternalServiceErrorResponseContent",
2316
+ '503': "ServiceUnavailableErrorResponseContent",
2317
+ }
2318
+ response_data = self.api_client.call_api(
2319
+ *_param,
2320
+ _request_timeout=_request_timeout
2321
+ )
2322
+ return response_data.response
2323
+
2324
+
2325
+ def _update_vps_config_serialize(
2326
+ self,
2327
+ update_vps_config_request_content,
2328
+ _request_auth,
2329
+ _content_type,
2330
+ _headers,
2331
+ _host_index,
2332
+ ) -> RequestSerialized:
2333
+
2334
+ _host = None
2335
+
2336
+ _collection_formats: Dict[str, str] = {
2337
+ }
2338
+
2339
+ _path_params: Dict[str, str] = {}
2340
+ _query_params: List[Tuple[str, str]] = []
2341
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2342
+ _form_params: List[Tuple[str, str]] = []
2343
+ _files: Dict[
2344
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2345
+ ] = {}
2346
+ _body_params: Optional[bytes] = None
2347
+
2348
+ # process the path parameters
2349
+ # process the query parameters
2350
+ # process the header parameters
2351
+ # process the form parameters
2352
+ # process the body parameter
2353
+ if update_vps_config_request_content is not None:
2354
+ _body_params = update_vps_config_request_content
2355
+
2356
+
2357
+ # set the HTTP header `Accept`
2358
+ if 'Accept' not in _header_params:
2359
+ _header_params['Accept'] = self.api_client.select_header_accept(
2360
+ [
2361
+ 'application/json'
2362
+ ]
2363
+ )
2364
+
2365
+ # set the HTTP header `Content-Type`
2366
+ if _content_type:
2367
+ _header_params['Content-Type'] = _content_type
2368
+ else:
2369
+ _default_content_type = (
2370
+ self.api_client.select_header_content_type(
2371
+ [
2372
+ 'application/json'
2373
+ ]
2374
+ )
2375
+ )
2376
+ if _default_content_type is not None:
2377
+ _header_params['Content-Type'] = _default_content_type
2378
+
2379
+ # authentication setting
2380
+ _auth_settings: List[str] = [
2381
+ 'BearerAuth'
2382
+ ]
2383
+
2384
+ return self.api_client.param_serialize(
2385
+ method='POST',
2386
+ resource_path='/vps/update-config',
2387
+ path_params=_path_params,
2388
+ query_params=_query_params,
2389
+ header_params=_header_params,
2390
+ body=_body_params,
2391
+ post_params=_form_params,
2392
+ files=_files,
2393
+ auth_settings=_auth_settings,
2394
+ collection_formats=_collection_formats,
2395
+ _host=_host,
2396
+ _request_auth=_request_auth
2397
+ )
2398
+
2399
+