hyperstack-async 1.55.1a0__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 (415) hide show
  1. hyperstack_async/__init__.py +434 -0
  2. hyperstack_async/api/__init__.py +60 -0
  3. hyperstack_async/api/access_keys_api.py +885 -0
  4. hyperstack_async/api/alive_api.py +510 -0
  5. hyperstack_async/api/api_key_api.py +1158 -0
  6. hyperstack_async/api/assigning_member_role_api.py +613 -0
  7. hyperstack_async/api/auth_api.py +1340 -0
  8. hyperstack_async/api/auto_topup_api.py +1376 -0
  9. hyperstack_async/api/beta_access_api.py +856 -0
  10. hyperstack_async/api/billing_api.py +12701 -0
  11. hyperstack_async/api/buckets_api.py +865 -0
  12. hyperstack_async/api/calculate_api.py +325 -0
  13. hyperstack_async/api/callbacks_api.py +1789 -0
  14. hyperstack_async/api/cluster_events_api.py +307 -0
  15. hyperstack_async/api/clusters_api.py +4884 -0
  16. hyperstack_async/api/compliance_api.py +1165 -0
  17. hyperstack_async/api/credit_api.py +297 -0
  18. hyperstack_async/api/customer_contract_api.py +919 -0
  19. hyperstack_async/api/dashboard_api.py +291 -0
  20. hyperstack_async/api/deployment_api.py +1118 -0
  21. hyperstack_async/api/email_opt_in_out_api.py +875 -0
  22. hyperstack_async/api/environment_api.py +2033 -0
  23. hyperstack_async/api/fip_exclusions_api.py +313 -0
  24. hyperstack_async/api/firewall_attachment_api.py +345 -0
  25. hyperstack_async/api/firewalls_api.py +1813 -0
  26. hyperstack_async/api/flavor_api.py +314 -0
  27. hyperstack_async/api/floating_ip_api.py +586 -0
  28. hyperstack_async/api/gpu_api.py +291 -0
  29. hyperstack_async/api/health_api.py +282 -0
  30. hyperstack_async/api/image_api.py +1224 -0
  31. hyperstack_async/api/invite_api.py +1127 -0
  32. hyperstack_async/api/keypair_api.py +1463 -0
  33. hyperstack_async/api/organization_api.py +861 -0
  34. hyperstack_async/api/partner_config_api.py +566 -0
  35. hyperstack_async/api/payment_api.py +865 -0
  36. hyperstack_async/api/permission_api.py +291 -0
  37. hyperstack_async/api/policy_api.py +291 -0
  38. hyperstack_async/api/pricebook_api.py +295 -0
  39. hyperstack_async/api/profile_api.py +1127 -0
  40. hyperstack_async/api/rbac_role_api.py +1429 -0
  41. hyperstack_async/api/region_api.py +291 -0
  42. hyperstack_async/api/regions_api.py +282 -0
  43. hyperstack_async/api/security_rules_api.py +291 -0
  44. hyperstack_async/api/snapshot_events_api.py +290 -0
  45. hyperstack_async/api/snapshots_api.py +1773 -0
  46. hyperstack_async/api/stock_api.py +291 -0
  47. hyperstack_async/api/template_api.py +1492 -0
  48. hyperstack_async/api/user_api.py +1130 -0
  49. hyperstack_async/api/user_consent_api.py +1416 -0
  50. hyperstack_async/api/user_consent_events_api.py +307 -0
  51. hyperstack_async/api/user_detail_choice_api.py +294 -0
  52. hyperstack_async/api/user_permission_api.py +565 -0
  53. hyperstack_async/api/virtual_machine_api.py +6246 -0
  54. hyperstack_async/api/virtual_machine_events_api.py +310 -0
  55. hyperstack_async/api/vnc_url_api.py +599 -0
  56. hyperstack_async/api/volume_api.py +2042 -0
  57. hyperstack_async/api/volume_attachment_api.py +950 -0
  58. hyperstack_async/api/vouchers_api.py +326 -0
  59. hyperstack_async/api_client.py +800 -0
  60. hyperstack_async/api_response.py +21 -0
  61. hyperstack_async/configuration.py +591 -0
  62. hyperstack_async/exceptions.py +199 -0
  63. hyperstack_async/models/__init__.py +362 -0
  64. hyperstack_async/models/access_token_field.py +100 -0
  65. hyperstack_async/models/add_user_info_success_response_model.py +108 -0
  66. hyperstack_async/models/allocated_gpu_count_graph.py +102 -0
  67. hyperstack_async/models/allowed_countries_response.py +102 -0
  68. hyperstack_async/models/api_key_fields.py +109 -0
  69. hyperstack_async/models/assign_rbac_role_payload.py +100 -0
  70. hyperstack_async/models/attach_callback_payload.py +100 -0
  71. hyperstack_async/models/attach_callback_response.py +104 -0
  72. hyperstack_async/models/attach_firewall_with_vm.py +100 -0
  73. hyperstack_async/models/attach_firewalls_to_vm_payload.py +100 -0
  74. hyperstack_async/models/attach_volume_fields.py +113 -0
  75. hyperstack_async/models/attach_volumes.py +112 -0
  76. hyperstack_async/models/attach_volumes_payload.py +102 -0
  77. hyperstack_async/models/attachments_fields_for_volume.py +108 -0
  78. hyperstack_async/models/attributes.py +110 -0
  79. hyperstack_async/models/auth_get_token_response_model.py +108 -0
  80. hyperstack_async/models/auth_user_fields.py +107 -0
  81. hyperstack_async/models/auth_user_info_response_model.py +108 -0
  82. hyperstack_async/models/auto_topup.py +108 -0
  83. hyperstack_async/models/auto_topup_error_response.py +104 -0
  84. hyperstack_async/models/auto_topup_status_schema.py +104 -0
  85. hyperstack_async/models/beta_access_request_fields.py +121 -0
  86. hyperstack_async/models/beta_access_request_payload.py +102 -0
  87. hyperstack_async/models/beta_access_request_response_model.py +108 -0
  88. hyperstack_async/models/beta_access_status_item.py +115 -0
  89. hyperstack_async/models/beta_access_status_response_model.py +112 -0
  90. hyperstack_async/models/billing_history.py +110 -0
  91. hyperstack_async/models/billing_history_data_synthesis_details.py +118 -0
  92. hyperstack_async/models/billing_history_fine_tuning.py +118 -0
  93. hyperstack_async/models/billing_history_image_generation_details.py +118 -0
  94. hyperstack_async/models/billing_history_model_evalutation_details.py +118 -0
  95. hyperstack_async/models/billing_history_serverless_inference.py +118 -0
  96. hyperstack_async/models/billing_history_serverless_inference_details.py +118 -0
  97. hyperstack_async/models/billing_metrices_fields.py +121 -0
  98. hyperstack_async/models/billing_metrices_response.py +112 -0
  99. hyperstack_async/models/cluster_events.py +112 -0
  100. hyperstack_async/models/cluster_events_fields.py +117 -0
  101. hyperstack_async/models/cluster_fields.py +147 -0
  102. hyperstack_async/models/cluster_flavor_fields.py +126 -0
  103. hyperstack_async/models/cluster_list_response.py +112 -0
  104. hyperstack_async/models/cluster_node_fields.py +125 -0
  105. hyperstack_async/models/cluster_node_group_fields.py +133 -0
  106. hyperstack_async/models/cluster_node_group_firewall_fields.py +104 -0
  107. hyperstack_async/models/cluster_node_groups_create_response.py +118 -0
  108. hyperstack_async/models/cluster_node_groups_get_response.py +108 -0
  109. hyperstack_async/models/cluster_node_groups_list_response.py +112 -0
  110. hyperstack_async/models/cluster_node_instance_fields.py +114 -0
  111. hyperstack_async/models/cluster_nodes_list_response.py +112 -0
  112. hyperstack_async/models/cluster_response.py +108 -0
  113. hyperstack_async/models/cluster_version.py +111 -0
  114. hyperstack_async/models/cluster_versions.py +112 -0
  115. hyperstack_async/models/colors.py +110 -0
  116. hyperstack_async/models/common_response_model.py +102 -0
  117. hyperstack_async/models/compatible_flavor.py +108 -0
  118. hyperstack_async/models/compliance_fields.py +106 -0
  119. hyperstack_async/models/compliance_model_fields.py +112 -0
  120. hyperstack_async/models/compliance_payload.py +110 -0
  121. hyperstack_async/models/compliance_response.py +108 -0
  122. hyperstack_async/models/consent_action_response.py +106 -0
  123. hyperstack_async/models/consent_block.py +112 -0
  124. hyperstack_async/models/consent_events_response.py +114 -0
  125. hyperstack_async/models/consent_template.py +110 -0
  126. hyperstack_async/models/consent_templates_response.py +100 -0
  127. hyperstack_async/models/container_overview_fields.py +108 -0
  128. hyperstack_async/models/contract.py +118 -0
  129. hyperstack_async/models/contract_discount_plan_fields.py +118 -0
  130. hyperstack_async/models/contract_gpu_allocation_graph_response.py +108 -0
  131. hyperstack_async/models/contract_instance_fields.py +121 -0
  132. hyperstack_async/models/contract_instances_response.py +112 -0
  133. hyperstack_async/models/create_auto_topup_payload.py +102 -0
  134. hyperstack_async/models/create_auto_topup_response.py +108 -0
  135. hyperstack_async/models/create_cluster_node_fields.py +115 -0
  136. hyperstack_async/models/create_cluster_node_group_payload.py +120 -0
  137. hyperstack_async/models/create_cluster_payload.py +137 -0
  138. hyperstack_async/models/create_environment.py +103 -0
  139. hyperstack_async/models/create_firewall_payload.py +104 -0
  140. hyperstack_async/models/create_firewall_rule_payload.py +117 -0
  141. hyperstack_async/models/create_image.py +104 -0
  142. hyperstack_async/models/create_image_payload.py +102 -0
  143. hyperstack_async/models/create_instances_payload.py +149 -0
  144. hyperstack_async/models/create_instances_response.py +112 -0
  145. hyperstack_async/models/create_profile_payload.py +105 -0
  146. hyperstack_async/models/create_profile_response.py +108 -0
  147. hyperstack_async/models/create_security_rule_payload.py +117 -0
  148. hyperstack_async/models/create_snapshot_payload.py +104 -0
  149. hyperstack_async/models/create_snapshot_response.py +108 -0
  150. hyperstack_async/models/create_update_compliance_response.py +108 -0
  151. hyperstack_async/models/create_update_rbac_role_payload.py +107 -0
  152. hyperstack_async/models/create_volume_payload.py +113 -0
  153. hyperstack_async/models/customer_contract_detail_response_model.py +108 -0
  154. hyperstack_async/models/customer_contract_fields.py +125 -0
  155. hyperstack_async/models/dashboard_info_response.py +108 -0
  156. hyperstack_async/models/data_synthesis_billing_history_details_response_schema.py +108 -0
  157. hyperstack_async/models/delete_cluster_nodes_fields.py +100 -0
  158. hyperstack_async/models/deployment_fields.py +111 -0
  159. hyperstack_async/models/deployment_fields_for_start_deployments.py +113 -0
  160. hyperstack_async/models/deployments.py +112 -0
  161. hyperstack_async/models/detach_volumes.py +112 -0
  162. hyperstack_async/models/detach_volumes_payload.py +100 -0
  163. hyperstack_async/models/disable_auto_topup_response.py +108 -0
  164. hyperstack_async/models/edit_label_of_an_existing_vm_payload.py +100 -0
  165. hyperstack_async/models/email_category.py +122 -0
  166. hyperstack_async/models/email_category_child.py +114 -0
  167. hyperstack_async/models/email_preferences_response.py +108 -0
  168. hyperstack_async/models/environment.py +108 -0
  169. hyperstack_async/models/environment_features.py +112 -0
  170. hyperstack_async/models/environment_fields.py +113 -0
  171. hyperstack_async/models/environment_fields_for_volume.py +104 -0
  172. hyperstack_async/models/environments.py +118 -0
  173. hyperstack_async/models/error_response_model.py +104 -0
  174. hyperstack_async/models/firewall_attachment_model.py +111 -0
  175. hyperstack_async/models/firewall_attachment_vm_model.py +111 -0
  176. hyperstack_async/models/firewall_detail_fields.py +135 -0
  177. hyperstack_async/models/firewall_detail_response.py +108 -0
  178. hyperstack_async/models/firewall_environment_fields.py +104 -0
  179. hyperstack_async/models/firewall_fields.py +115 -0
  180. hyperstack_async/models/firewall_response.py +108 -0
  181. hyperstack_async/models/firewall_rule.py +108 -0
  182. hyperstack_async/models/firewalls_list_response.py +118 -0
  183. hyperstack_async/models/flavor_fields.py +135 -0
  184. hyperstack_async/models/flavor_item_get_response.py +112 -0
  185. hyperstack_async/models/flavor_label_fields.py +102 -0
  186. hyperstack_async/models/flavor_list_response.py +112 -0
  187. hyperstack_async/models/flavor_object_fields.py +108 -0
  188. hyperstack_async/models/flavor_restrictions.py +112 -0
  189. hyperstack_async/models/generate_update_api_key_payload.py +103 -0
  190. hyperstack_async/models/generate_update_api_key_response_model.py +108 -0
  191. hyperstack_async/models/get_api_keys_response_model.py +112 -0
  192. hyperstack_async/models/get_auto_topup_response.py +108 -0
  193. hyperstack_async/models/get_credit_and_threshold_info.py +104 -0
  194. hyperstack_async/models/get_credit_and_threshold_info_in_response.py +108 -0
  195. hyperstack_async/models/get_customer_contracts_list_response_model.py +114 -0
  196. hyperstack_async/models/get_instance_logs_response.py +100 -0
  197. hyperstack_async/models/get_invites_response_model.py +112 -0
  198. hyperstack_async/models/get_organization_response_model.py +108 -0
  199. hyperstack_async/models/get_permissions_response_model.py +112 -0
  200. hyperstack_async/models/get_policies_response_model.py +112 -0
  201. hyperstack_async/models/get_rbac_roles_response_model.py +112 -0
  202. hyperstack_async/models/get_user_permissions_response_model.py +112 -0
  203. hyperstack_async/models/gpu_fields.py +119 -0
  204. hyperstack_async/models/gpu_list.py +112 -0
  205. hyperstack_async/models/gpu_region_fields.py +102 -0
  206. hyperstack_async/models/graph_datetime_value_model.py +102 -0
  207. hyperstack_async/models/image.py +104 -0
  208. hyperstack_async/models/image_fields.py +132 -0
  209. hyperstack_async/models/image_generation_billing_history_details_response_schema.py +108 -0
  210. hyperstack_async/models/image_get_response.py +114 -0
  211. hyperstack_async/models/images.py +112 -0
  212. hyperstack_async/models/import_keypair_payload.py +105 -0
  213. hyperstack_async/models/import_keypair_response.py +108 -0
  214. hyperstack_async/models/infrahub_resource_object_response_for_customer.py +122 -0
  215. hyperstack_async/models/instance.py +108 -0
  216. hyperstack_async/models/instance_enhanced_metrics_fields.py +100 -0
  217. hyperstack_async/models/instance_environment_fields.py +112 -0
  218. hyperstack_async/models/instance_events.py +112 -0
  219. hyperstack_async/models/instance_events_fields.py +115 -0
  220. hyperstack_async/models/instance_fields.py +185 -0
  221. hyperstack_async/models/instance_flavor_fields.py +126 -0
  222. hyperstack_async/models/instance_image_fields.py +100 -0
  223. hyperstack_async/models/instance_keypair_fields.py +100 -0
  224. hyperstack_async/models/instance_overview_fields.py +108 -0
  225. hyperstack_async/models/instance_resize_payload.py +106 -0
  226. hyperstack_async/models/instances.py +118 -0
  227. hyperstack_async/models/invite_fields.py +107 -0
  228. hyperstack_async/models/invite_user_payload.py +108 -0
  229. hyperstack_async/models/invite_user_response_model.py +108 -0
  230. hyperstack_async/models/keypair_environment_features.py +112 -0
  231. hyperstack_async/models/keypair_environment_fields.py +113 -0
  232. hyperstack_async/models/keypair_fields.py +115 -0
  233. hyperstack_async/models/keypairs.py +118 -0
  234. hyperstack_async/models/lable_resonse.py +102 -0
  235. hyperstack_async/models/last_day_cost_fields.py +106 -0
  236. hyperstack_async/models/last_day_cost_response.py +108 -0
  237. hyperstack_async/models/logos.py +106 -0
  238. hyperstack_async/models/manual_reconciliation_model.py +108 -0
  239. hyperstack_async/models/master_flavors_response.py +112 -0
  240. hyperstack_async/models/metric_item_fields.py +104 -0
  241. hyperstack_async/models/metrics.py +114 -0
  242. hyperstack_async/models/metrics_fields.py +129 -0
  243. hyperstack_async/models/mfa_status_fields.py +100 -0
  244. hyperstack_async/models/mfa_status_response.py +108 -0
  245. hyperstack_async/models/model_evaluation_billing_history_details_response_schema.py +108 -0
  246. hyperstack_async/models/name_available_model.py +104 -0
  247. hyperstack_async/models/new_configurations_response.py +108 -0
  248. hyperstack_async/models/new_model_response.py +114 -0
  249. hyperstack_async/models/new_stock_response.py +112 -0
  250. hyperstack_async/models/new_stock_retrive_response.py +108 -0
  251. hyperstack_async/models/object_storage_access_key_create_request.py +103 -0
  252. hyperstack_async/models/object_storage_access_key_create_response.py +114 -0
  253. hyperstack_async/models/object_storage_access_key_list_response.py +114 -0
  254. hyperstack_async/models/object_storage_access_key_response.py +112 -0
  255. hyperstack_async/models/object_storage_bucket_list_response.py +110 -0
  256. hyperstack_async/models/object_storage_bucket_response.py +114 -0
  257. hyperstack_async/models/object_storage_delete_response.py +100 -0
  258. hyperstack_async/models/object_storage_error_response.py +104 -0
  259. hyperstack_async/models/object_storage_health_response.py +100 -0
  260. hyperstack_async/models/object_storage_pagination_meta.py +104 -0
  261. hyperstack_async/models/object_storage_region_list_response.py +108 -0
  262. hyperstack_async/models/object_storage_region_response.py +100 -0
  263. hyperstack_async/models/object_storage_regions_enum.py +36 -0
  264. hyperstack_async/models/organization_fields.py +127 -0
  265. hyperstack_async/models/organization_level_billing_history.py +112 -0
  266. hyperstack_async/models/organization_level_billing_history_resources.py +110 -0
  267. hyperstack_async/models/organization_level_billing_history_response_attributes.py +100 -0
  268. hyperstack_async/models/organization_level_billing_history_response_metrics.py +110 -0
  269. hyperstack_async/models/organization_level_billing_history_response_model.py +108 -0
  270. hyperstack_async/models/organization_threshold_fields.py +108 -0
  271. hyperstack_async/models/organization_threshold_update_response.py +108 -0
  272. hyperstack_async/models/organization_thresholds_response.py +112 -0
  273. hyperstack_async/models/organization_user_response_model.py +125 -0
  274. hyperstack_async/models/overview_info.py +116 -0
  275. hyperstack_async/models/pagination.py +104 -0
  276. hyperstack_async/models/pagination_data.py +104 -0
  277. hyperstack_async/models/partner_config.py +124 -0
  278. hyperstack_async/models/payment_details_fields.py +131 -0
  279. hyperstack_async/models/payment_details_response.py +112 -0
  280. hyperstack_async/models/payment_initiate_fields.py +100 -0
  281. hyperstack_async/models/payment_initiate_payload.py +100 -0
  282. hyperstack_async/models/payment_initiate_response.py +108 -0
  283. hyperstack_async/models/permission_fields.py +111 -0
  284. hyperstack_async/models/policy_fields.py +117 -0
  285. hyperstack_async/models/policy_permission_fields.py +104 -0
  286. hyperstack_async/models/pricebook_model.py +113 -0
  287. hyperstack_async/models/pricebook_resource_object_response_for_customer.py +112 -0
  288. hyperstack_async/models/primary_color.py +102 -0
  289. hyperstack_async/models/profile_fields.py +109 -0
  290. hyperstack_async/models/profile_list_response.py +112 -0
  291. hyperstack_async/models/profile_object_fields.py +102 -0
  292. hyperstack_async/models/rbac_role_detail_response_model.py +108 -0
  293. hyperstack_async/models/rbac_role_detail_response_model_fixed.py +108 -0
  294. hyperstack_async/models/rbac_role_field.py +100 -0
  295. hyperstack_async/models/rbac_role_fields.py +127 -0
  296. hyperstack_async/models/record_consent_request.py +132 -0
  297. hyperstack_async/models/redeem_voucher_payload.py +100 -0
  298. hyperstack_async/models/region_fields.py +120 -0
  299. hyperstack_async/models/regions.py +112 -0
  300. hyperstack_async/models/remove_member_from_organization_response_model.py +102 -0
  301. hyperstack_async/models/remove_member_payload.py +101 -0
  302. hyperstack_async/models/request_console.py +104 -0
  303. hyperstack_async/models/request_instance_logs_payload.py +100 -0
  304. hyperstack_async/models/request_instance_logs_response.py +100 -0
  305. hyperstack_async/models/resource_billing_events_history_metrics.py +108 -0
  306. hyperstack_async/models/resource_billing_events_history_response.py +112 -0
  307. hyperstack_async/models/resource_billing_response_for_customer.py +108 -0
  308. hyperstack_async/models/resource_level_billing_bucket_details_resources.py +110 -0
  309. hyperstack_async/models/resource_level_billing_details_attributes.py +104 -0
  310. hyperstack_async/models/resource_level_billing_details_metrics.py +114 -0
  311. hyperstack_async/models/resource_level_billing_details_vm.py +112 -0
  312. hyperstack_async/models/resource_level_billing_details_volume.py +112 -0
  313. hyperstack_async/models/resource_level_billing_details_volume_attributes.py +108 -0
  314. hyperstack_async/models/resource_level_billing_details_volume_metrics.py +108 -0
  315. hyperstack_async/models/resource_level_billing_history.py +118 -0
  316. hyperstack_async/models/resource_level_billing_history_resources.py +110 -0
  317. hyperstack_async/models/resource_level_billing_history_resources_cluster.py +120 -0
  318. hyperstack_async/models/resource_level_billing_history_response_attributes.py +108 -0
  319. hyperstack_async/models/resource_level_billing_history_response_metrics.py +104 -0
  320. hyperstack_async/models/resource_level_billing_vm_details_resources.py +110 -0
  321. hyperstack_async/models/resource_level_billing_volume_details_resources.py +110 -0
  322. hyperstack_async/models/resource_level_bucket_billing_details_response_model.py +108 -0
  323. hyperstack_async/models/resource_level_bucket_billing_history_response_model.py +108 -0
  324. hyperstack_async/models/resource_level_cluster_billing_details_response_model.py +108 -0
  325. hyperstack_async/models/resource_level_cluster_billing_history_response_model.py +108 -0
  326. hyperstack_async/models/resource_level_cluster_graph_billing_details_response_model.py +108 -0
  327. hyperstack_async/models/resource_level_graph_billing_detail_volume.py +114 -0
  328. hyperstack_async/models/resource_level_graph_billing_details_attributes.py +104 -0
  329. hyperstack_async/models/resource_level_graph_billing_details_bucket.py +114 -0
  330. hyperstack_async/models/resource_level_graph_billing_details_metrics.py +110 -0
  331. hyperstack_async/models/resource_level_graph_billing_details_vm.py +114 -0
  332. hyperstack_async/models/resource_level_graph_billing_vm_details_resources.py +110 -0
  333. hyperstack_async/models/resource_level_graph_billing_volume_details_resources.py +110 -0
  334. hyperstack_async/models/resource_level_vm_billing_details_response_model.py +108 -0
  335. hyperstack_async/models/resource_level_vm_billing_history_response_model.py +108 -0
  336. hyperstack_async/models/resource_level_vm_graph_billing_details_response_model.py +108 -0
  337. hyperstack_async/models/resource_level_volume_billing_details_response_model.py +108 -0
  338. hyperstack_async/models/resource_level_volume_billing_history_response_model.py +108 -0
  339. hyperstack_async/models/resource_level_volume_graph_billing_details_response_model.py +108 -0
  340. hyperstack_async/models/resource_object_response_for_customer.py +106 -0
  341. hyperstack_async/models/response_model.py +102 -0
  342. hyperstack_async/models/role_permission_fields.py +104 -0
  343. hyperstack_async/models/role_policy_fields.py +104 -0
  344. hyperstack_async/models/secondary_color.py +102 -0
  345. hyperstack_async/models/security_group_rule.py +108 -0
  346. hyperstack_async/models/security_group_rule_fields.py +117 -0
  347. hyperstack_async/models/security_rules_fields_for_instance.py +117 -0
  348. hyperstack_async/models/security_rules_protocol_fields.py +104 -0
  349. hyperstack_async/models/serverless_inferenced_billing_history_details_response_schema.py +108 -0
  350. hyperstack_async/models/snapshot_fields.py +123 -0
  351. hyperstack_async/models/snapshot_restore_request.py +102 -0
  352. hyperstack_async/models/snapshot_retrieve.py +108 -0
  353. hyperstack_async/models/snapshot_retrieve_fields.py +143 -0
  354. hyperstack_async/models/snapshots.py +118 -0
  355. hyperstack_async/models/start_deployment.py +108 -0
  356. hyperstack_async/models/start_deployment_payload.py +106 -0
  357. hyperstack_async/models/sub_resource_graph_billing_details_metrics.py +165 -0
  358. hyperstack_async/models/sub_resources_costs_response_model.py +114 -0
  359. hyperstack_async/models/sub_resources_graph_billing_history_fields.py +110 -0
  360. hyperstack_async/models/sub_resources_graph_response_model.py +108 -0
  361. hyperstack_async/models/subscribe_or_unsubscribe_update_payload.py +100 -0
  362. hyperstack_async/models/supported_keypair_public_key_types_response.py +104 -0
  363. hyperstack_async/models/template.py +108 -0
  364. hyperstack_async/models/template_fields.py +111 -0
  365. hyperstack_async/models/templates.py +112 -0
  366. hyperstack_async/models/token_based_billing_history_response.py +108 -0
  367. hyperstack_async/models/update_auto_topup_payload.py +102 -0
  368. hyperstack_async/models/update_auto_topup_response.py +108 -0
  369. hyperstack_async/models/update_cluster_node_group_payload.py +105 -0
  370. hyperstack_async/models/update_consent_request.py +123 -0
  371. hyperstack_async/models/update_email_preference_input.py +100 -0
  372. hyperstack_async/models/update_email_preference_response.py +100 -0
  373. hyperstack_async/models/update_environment.py +101 -0
  374. hyperstack_async/models/update_keypair_name.py +101 -0
  375. hyperstack_async/models/update_keypair_name_response.py +108 -0
  376. hyperstack_async/models/update_organization_payload.py +101 -0
  377. hyperstack_async/models/update_organization_response_model.py +102 -0
  378. hyperstack_async/models/update_template.py +104 -0
  379. hyperstack_async/models/update_volume_attachment_payload.py +100 -0
  380. hyperstack_async/models/update_volume_payload.py +100 -0
  381. hyperstack_async/models/update_volume_response.py +110 -0
  382. hyperstack_async/models/uris.py +112 -0
  383. hyperstack_async/models/user_consent.py +116 -0
  384. hyperstack_async/models/user_consent_event.py +112 -0
  385. hyperstack_async/models/user_consents_response.py +108 -0
  386. hyperstack_async/models/user_default_choice_for_user_fields.py +104 -0
  387. hyperstack_async/models/user_default_choices_for_user_response.py +112 -0
  388. hyperstack_async/models/user_enhanced_metrics_payload.py +100 -0
  389. hyperstack_async/models/user_enhanced_metrics_response.py +110 -0
  390. hyperstack_async/models/user_enhanced_metrics_response_fields.py +100 -0
  391. hyperstack_async/models/user_info_post_payload.py +120 -0
  392. hyperstack_async/models/user_organizations_response.py +108 -0
  393. hyperstack_async/models/user_permission_fields.py +104 -0
  394. hyperstack_async/models/users_info_fields.py +129 -0
  395. hyperstack_async/models/users_info_list_response.py +108 -0
  396. hyperstack_async/models/vm_quota.py +112 -0
  397. hyperstack_async/models/vncurl.py +108 -0
  398. hyperstack_async/models/vncurl_fields.py +102 -0
  399. hyperstack_async/models/volume.py +108 -0
  400. hyperstack_async/models/volume_attachment_fields.py +115 -0
  401. hyperstack_async/models/volume_fields.py +139 -0
  402. hyperstack_async/models/volume_fields_for_instance.py +110 -0
  403. hyperstack_async/models/volume_overview_fields.py +104 -0
  404. hyperstack_async/models/volume_types.py +104 -0
  405. hyperstack_async/models/volumes.py +118 -0
  406. hyperstack_async/models/volumes_fields.py +137 -0
  407. hyperstack_async/models/voucher.py +110 -0
  408. hyperstack_async/models/voucher_redeem_response_schema.py +108 -0
  409. hyperstack_async/models/workload_billing_history_response.py +108 -0
  410. hyperstack_async/py.typed +0 -0
  411. hyperstack_async/rest.py +215 -0
  412. hyperstack_async-1.55.1a0.dist-info/METADATA +25 -0
  413. hyperstack_async-1.55.1a0.dist-info/RECORD +415 -0
  414. hyperstack_async-1.55.1a0.dist-info/WHEEL +5 -0
  415. hyperstack_async-1.55.1a0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1376 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Infrahub-API
5
+
6
+ Leverage the Infrahub API and Hyperstack platform to easily create, manage, and scale powerful GPU virtual machines and their associated resources. Access this SDK to automate the deployment of your workloads and streamline your infrastructure management. To contribute, please raise an issue with a bug report, feature request, feedback, or general inquiry.
7
+
8
+ The version of the OpenAPI document: 1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from ..models.auto_topup_status_schema import AutoTopupStatusSchema
20
+ from ..models.create_auto_topup_payload import CreateAutoTopupPayload
21
+ from ..models.create_auto_topup_response import CreateAutoTopupResponse
22
+ from ..models.disable_auto_topup_response import DisableAutoTopupResponse
23
+ from ..models.get_auto_topup_response import GetAutoTopupResponse
24
+ from ..models.update_auto_topup_payload import UpdateAutoTopupPayload
25
+ from ..models.update_auto_topup_response import UpdateAutoTopupResponse
26
+
27
+ from ..api_client import ApiClient, RequestSerialized
28
+ from ..api_response import ApiResponse
29
+ from ..rest import RESTResponseType
30
+
31
+
32
+ class AutoTopupApi:
33
+ """NOTE: This class is auto generated by OpenAPI Generator
34
+ Ref: https://openapi-generator.tech
35
+
36
+ Do not edit the class manually.
37
+ """
38
+
39
+ def __init__(self, api_client=None) -> None:
40
+ if api_client is None:
41
+ api_client = ApiClient.get_default()
42
+ self.api_client = api_client
43
+
44
+
45
+ @validate_call
46
+ async def create_auto_top_up(
47
+ self,
48
+ payload: CreateAutoTopupPayload,
49
+ _request_timeout: Union[
50
+ None,
51
+ Annotated[StrictFloat, Field(gt=0)],
52
+ Tuple[
53
+ Annotated[StrictFloat, Field(gt=0)],
54
+ Annotated[StrictFloat, Field(gt=0)]
55
+ ]
56
+ ] = None,
57
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
58
+ _content_type: Optional[StrictStr] = None,
59
+ _headers: Optional[Dict[StrictStr, Any]] = None,
60
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
61
+ ) -> CreateAutoTopupResponse:
62
+ """Create an auto top up configuration and initiate Stripe setup
63
+
64
+
65
+ :param payload: (required)
66
+ :type payload: CreateAutoTopupPayload
67
+ :param _request_timeout: timeout setting for this request. If one
68
+ number provided, it will be total request
69
+ timeout. It can also be a pair (tuple) of
70
+ (connection, read) timeouts.
71
+ :type _request_timeout: int, tuple(int, int), optional
72
+ :param _request_auth: set to override the auth_settings for an a single
73
+ request; this effectively ignores the
74
+ authentication in the spec for a single request.
75
+ :type _request_auth: dict, optional
76
+ :param _content_type: force content-type for the request.
77
+ :type _content_type: str, Optional
78
+ :param _headers: set to override the headers for a single
79
+ request; this effectively ignores the headers
80
+ in the spec for a single request.
81
+ :type _headers: dict, optional
82
+ :param _host_index: set to override the host_index for a single
83
+ request; this effectively ignores the host_index
84
+ in the spec for a single request.
85
+ :type _host_index: int, optional
86
+ :return: Returns the result object.
87
+ """ # noqa: E501
88
+
89
+ _param = self._create_auto_top_up_serialize(
90
+ payload=payload,
91
+ _request_auth=_request_auth,
92
+ _content_type=_content_type,
93
+ _headers=_headers,
94
+ _host_index=_host_index
95
+ )
96
+
97
+ _response_types_map: Dict[str, Optional[str]] = {
98
+ '201': "CreateAutoTopupResponse",
99
+ '400': "AutoTopupErrorResponse",
100
+ '401': "AutoTopupErrorResponse",
101
+ '403': "AutoTopupErrorResponse",
102
+ '409': "AutoTopupErrorResponse",
103
+ '500': None,
104
+ }
105
+ response_data = await self.api_client.call_api(
106
+ *_param,
107
+ _request_timeout=_request_timeout
108
+ )
109
+ await response_data.read()
110
+ return self.api_client.response_deserialize(
111
+ response_data=response_data,
112
+ response_types_map=_response_types_map,
113
+ ).data
114
+
115
+
116
+ @validate_call
117
+ async def create_auto_top_up_with_http_info(
118
+ self,
119
+ payload: CreateAutoTopupPayload,
120
+ _request_timeout: Union[
121
+ None,
122
+ Annotated[StrictFloat, Field(gt=0)],
123
+ Tuple[
124
+ Annotated[StrictFloat, Field(gt=0)],
125
+ Annotated[StrictFloat, Field(gt=0)]
126
+ ]
127
+ ] = None,
128
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
129
+ _content_type: Optional[StrictStr] = None,
130
+ _headers: Optional[Dict[StrictStr, Any]] = None,
131
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
132
+ ) -> ApiResponse[CreateAutoTopupResponse]:
133
+ """Create an auto top up configuration and initiate Stripe setup
134
+
135
+
136
+ :param payload: (required)
137
+ :type payload: CreateAutoTopupPayload
138
+ :param _request_timeout: timeout setting for this request. If one
139
+ number provided, it will be total request
140
+ timeout. It can also be a pair (tuple) of
141
+ (connection, read) timeouts.
142
+ :type _request_timeout: int, tuple(int, int), optional
143
+ :param _request_auth: set to override the auth_settings for an a single
144
+ request; this effectively ignores the
145
+ authentication in the spec for a single request.
146
+ :type _request_auth: dict, optional
147
+ :param _content_type: force content-type for the request.
148
+ :type _content_type: str, Optional
149
+ :param _headers: set to override the headers for a single
150
+ request; this effectively ignores the headers
151
+ in the spec for a single request.
152
+ :type _headers: dict, optional
153
+ :param _host_index: set to override the host_index for a single
154
+ request; this effectively ignores the host_index
155
+ in the spec for a single request.
156
+ :type _host_index: int, optional
157
+ :return: Returns the result object.
158
+ """ # noqa: E501
159
+
160
+ _param = self._create_auto_top_up_serialize(
161
+ payload=payload,
162
+ _request_auth=_request_auth,
163
+ _content_type=_content_type,
164
+ _headers=_headers,
165
+ _host_index=_host_index
166
+ )
167
+
168
+ _response_types_map: Dict[str, Optional[str]] = {
169
+ '201': "CreateAutoTopupResponse",
170
+ '400': "AutoTopupErrorResponse",
171
+ '401': "AutoTopupErrorResponse",
172
+ '403': "AutoTopupErrorResponse",
173
+ '409': "AutoTopupErrorResponse",
174
+ '500': None,
175
+ }
176
+ response_data = await self.api_client.call_api(
177
+ *_param,
178
+ _request_timeout=_request_timeout
179
+ )
180
+ await response_data.read()
181
+ return self.api_client.response_deserialize(
182
+ response_data=response_data,
183
+ response_types_map=_response_types_map,
184
+ )
185
+
186
+
187
+ @validate_call
188
+ async def create_auto_top_up_without_preload_content(
189
+ self,
190
+ payload: CreateAutoTopupPayload,
191
+ _request_timeout: Union[
192
+ None,
193
+ Annotated[StrictFloat, Field(gt=0)],
194
+ Tuple[
195
+ Annotated[StrictFloat, Field(gt=0)],
196
+ Annotated[StrictFloat, Field(gt=0)]
197
+ ]
198
+ ] = None,
199
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
200
+ _content_type: Optional[StrictStr] = None,
201
+ _headers: Optional[Dict[StrictStr, Any]] = None,
202
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
203
+ ) -> RESTResponseType:
204
+ """Create an auto top up configuration and initiate Stripe setup
205
+
206
+
207
+ :param payload: (required)
208
+ :type payload: CreateAutoTopupPayload
209
+ :param _request_timeout: timeout setting for this request. If one
210
+ number provided, it will be total request
211
+ timeout. It can also be a pair (tuple) of
212
+ (connection, read) timeouts.
213
+ :type _request_timeout: int, tuple(int, int), optional
214
+ :param _request_auth: set to override the auth_settings for an a single
215
+ request; this effectively ignores the
216
+ authentication in the spec for a single request.
217
+ :type _request_auth: dict, optional
218
+ :param _content_type: force content-type for the request.
219
+ :type _content_type: str, Optional
220
+ :param _headers: set to override the headers for a single
221
+ request; this effectively ignores the headers
222
+ in the spec for a single request.
223
+ :type _headers: dict, optional
224
+ :param _host_index: set to override the host_index for a single
225
+ request; this effectively ignores the host_index
226
+ in the spec for a single request.
227
+ :type _host_index: int, optional
228
+ :return: Returns the result object.
229
+ """ # noqa: E501
230
+
231
+ _param = self._create_auto_top_up_serialize(
232
+ payload=payload,
233
+ _request_auth=_request_auth,
234
+ _content_type=_content_type,
235
+ _headers=_headers,
236
+ _host_index=_host_index
237
+ )
238
+
239
+ _response_types_map: Dict[str, Optional[str]] = {
240
+ '201': "CreateAutoTopupResponse",
241
+ '400': "AutoTopupErrorResponse",
242
+ '401': "AutoTopupErrorResponse",
243
+ '403': "AutoTopupErrorResponse",
244
+ '409': "AutoTopupErrorResponse",
245
+ '500': None,
246
+ }
247
+ response_data = await self.api_client.call_api(
248
+ *_param,
249
+ _request_timeout=_request_timeout
250
+ )
251
+ return response_data.response
252
+
253
+
254
+ def _create_auto_top_up_serialize(
255
+ self,
256
+ payload,
257
+ _request_auth,
258
+ _content_type,
259
+ _headers,
260
+ _host_index,
261
+ ) -> RequestSerialized:
262
+
263
+ _host = None
264
+
265
+ _collection_formats: Dict[str, str] = {
266
+ }
267
+
268
+ _path_params: Dict[str, str] = {}
269
+ _query_params: List[Tuple[str, str]] = []
270
+ _header_params: Dict[str, Optional[str]] = _headers or {}
271
+ _form_params: List[Tuple[str, str]] = []
272
+ _files: Dict[
273
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
274
+ ] = {}
275
+ _body_params: Optional[bytes] = None
276
+
277
+ # process the path parameters
278
+ # process the query parameters
279
+ # process the header parameters
280
+ # process the form parameters
281
+ # process the body parameter
282
+ if payload is not None:
283
+ _body_params = payload
284
+
285
+
286
+ # set the HTTP header `Accept`
287
+ if 'Accept' not in _header_params:
288
+ _header_params['Accept'] = self.api_client.select_header_accept(
289
+ [
290
+ 'application/json'
291
+ ]
292
+ )
293
+
294
+ # set the HTTP header `Content-Type`
295
+ if _content_type:
296
+ _header_params['Content-Type'] = _content_type
297
+ else:
298
+ _default_content_type = (
299
+ self.api_client.select_header_content_type(
300
+ [
301
+ 'application/json'
302
+ ]
303
+ )
304
+ )
305
+ if _default_content_type is not None:
306
+ _header_params['Content-Type'] = _default_content_type
307
+
308
+ # authentication setting
309
+ _auth_settings: List[str] = [
310
+ 'apiKey'
311
+ ]
312
+
313
+ return self.api_client.param_serialize(
314
+ method='POST',
315
+ resource_path='/billing/auto-topup',
316
+ path_params=_path_params,
317
+ query_params=_query_params,
318
+ header_params=_header_params,
319
+ body=_body_params,
320
+ post_params=_form_params,
321
+ files=_files,
322
+ auth_settings=_auth_settings,
323
+ collection_formats=_collection_formats,
324
+ _host=_host,
325
+ _request_auth=_request_auth
326
+ )
327
+
328
+
329
+
330
+
331
+ @validate_call
332
+ async def disable_auto_top_up(
333
+ self,
334
+ _request_timeout: Union[
335
+ None,
336
+ Annotated[StrictFloat, Field(gt=0)],
337
+ Tuple[
338
+ Annotated[StrictFloat, Field(gt=0)],
339
+ Annotated[StrictFloat, Field(gt=0)]
340
+ ]
341
+ ] = None,
342
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
343
+ _content_type: Optional[StrictStr] = None,
344
+ _headers: Optional[Dict[StrictStr, Any]] = None,
345
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
346
+ ) -> DisableAutoTopupResponse:
347
+ """Disable auto top up, preventing any future automatic charges
348
+
349
+
350
+ :param _request_timeout: timeout setting for this request. If one
351
+ number provided, it will be total request
352
+ timeout. It can also be a pair (tuple) of
353
+ (connection, read) timeouts.
354
+ :type _request_timeout: int, tuple(int, int), optional
355
+ :param _request_auth: set to override the auth_settings for an a single
356
+ request; this effectively ignores the
357
+ authentication in the spec for a single request.
358
+ :type _request_auth: dict, optional
359
+ :param _content_type: force content-type for the request.
360
+ :type _content_type: str, Optional
361
+ :param _headers: set to override the headers for a single
362
+ request; this effectively ignores the headers
363
+ in the spec for a single request.
364
+ :type _headers: dict, optional
365
+ :param _host_index: set to override the host_index for a single
366
+ request; this effectively ignores the host_index
367
+ in the spec for a single request.
368
+ :type _host_index: int, optional
369
+ :return: Returns the result object.
370
+ """ # noqa: E501
371
+
372
+ _param = self._disable_auto_top_up_serialize(
373
+ _request_auth=_request_auth,
374
+ _content_type=_content_type,
375
+ _headers=_headers,
376
+ _host_index=_host_index
377
+ )
378
+
379
+ _response_types_map: Dict[str, Optional[str]] = {
380
+ '200': "DisableAutoTopupResponse",
381
+ '401': "AutoTopupErrorResponse",
382
+ '403': "AutoTopupErrorResponse",
383
+ '404': "AutoTopupErrorResponse",
384
+ '500': None,
385
+ }
386
+ response_data = await self.api_client.call_api(
387
+ *_param,
388
+ _request_timeout=_request_timeout
389
+ )
390
+ await response_data.read()
391
+ return self.api_client.response_deserialize(
392
+ response_data=response_data,
393
+ response_types_map=_response_types_map,
394
+ ).data
395
+
396
+
397
+ @validate_call
398
+ async def disable_auto_top_up_with_http_info(
399
+ self,
400
+ _request_timeout: Union[
401
+ None,
402
+ Annotated[StrictFloat, Field(gt=0)],
403
+ Tuple[
404
+ Annotated[StrictFloat, Field(gt=0)],
405
+ Annotated[StrictFloat, Field(gt=0)]
406
+ ]
407
+ ] = None,
408
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
409
+ _content_type: Optional[StrictStr] = None,
410
+ _headers: Optional[Dict[StrictStr, Any]] = None,
411
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
412
+ ) -> ApiResponse[DisableAutoTopupResponse]:
413
+ """Disable auto top up, preventing any future automatic charges
414
+
415
+
416
+ :param _request_timeout: timeout setting for this request. If one
417
+ number provided, it will be total request
418
+ timeout. It can also be a pair (tuple) of
419
+ (connection, read) timeouts.
420
+ :type _request_timeout: int, tuple(int, int), optional
421
+ :param _request_auth: set to override the auth_settings for an a single
422
+ request; this effectively ignores the
423
+ authentication in the spec for a single request.
424
+ :type _request_auth: dict, optional
425
+ :param _content_type: force content-type for the request.
426
+ :type _content_type: str, Optional
427
+ :param _headers: set to override the headers for a single
428
+ request; this effectively ignores the headers
429
+ in the spec for a single request.
430
+ :type _headers: dict, optional
431
+ :param _host_index: set to override the host_index for a single
432
+ request; this effectively ignores the host_index
433
+ in the spec for a single request.
434
+ :type _host_index: int, optional
435
+ :return: Returns the result object.
436
+ """ # noqa: E501
437
+
438
+ _param = self._disable_auto_top_up_serialize(
439
+ _request_auth=_request_auth,
440
+ _content_type=_content_type,
441
+ _headers=_headers,
442
+ _host_index=_host_index
443
+ )
444
+
445
+ _response_types_map: Dict[str, Optional[str]] = {
446
+ '200': "DisableAutoTopupResponse",
447
+ '401': "AutoTopupErrorResponse",
448
+ '403': "AutoTopupErrorResponse",
449
+ '404': "AutoTopupErrorResponse",
450
+ '500': None,
451
+ }
452
+ response_data = await self.api_client.call_api(
453
+ *_param,
454
+ _request_timeout=_request_timeout
455
+ )
456
+ await response_data.read()
457
+ return self.api_client.response_deserialize(
458
+ response_data=response_data,
459
+ response_types_map=_response_types_map,
460
+ )
461
+
462
+
463
+ @validate_call
464
+ async def disable_auto_top_up_without_preload_content(
465
+ self,
466
+ _request_timeout: Union[
467
+ None,
468
+ Annotated[StrictFloat, Field(gt=0)],
469
+ Tuple[
470
+ Annotated[StrictFloat, Field(gt=0)],
471
+ Annotated[StrictFloat, Field(gt=0)]
472
+ ]
473
+ ] = None,
474
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
475
+ _content_type: Optional[StrictStr] = None,
476
+ _headers: Optional[Dict[StrictStr, Any]] = None,
477
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
478
+ ) -> RESTResponseType:
479
+ """Disable auto top up, preventing any future automatic charges
480
+
481
+
482
+ :param _request_timeout: timeout setting for this request. If one
483
+ number provided, it will be total request
484
+ timeout. It can also be a pair (tuple) of
485
+ (connection, read) timeouts.
486
+ :type _request_timeout: int, tuple(int, int), optional
487
+ :param _request_auth: set to override the auth_settings for an a single
488
+ request; this effectively ignores the
489
+ authentication in the spec for a single request.
490
+ :type _request_auth: dict, optional
491
+ :param _content_type: force content-type for the request.
492
+ :type _content_type: str, Optional
493
+ :param _headers: set to override the headers for a single
494
+ request; this effectively ignores the headers
495
+ in the spec for a single request.
496
+ :type _headers: dict, optional
497
+ :param _host_index: set to override the host_index for a single
498
+ request; this effectively ignores the host_index
499
+ in the spec for a single request.
500
+ :type _host_index: int, optional
501
+ :return: Returns the result object.
502
+ """ # noqa: E501
503
+
504
+ _param = self._disable_auto_top_up_serialize(
505
+ _request_auth=_request_auth,
506
+ _content_type=_content_type,
507
+ _headers=_headers,
508
+ _host_index=_host_index
509
+ )
510
+
511
+ _response_types_map: Dict[str, Optional[str]] = {
512
+ '200': "DisableAutoTopupResponse",
513
+ '401': "AutoTopupErrorResponse",
514
+ '403': "AutoTopupErrorResponse",
515
+ '404': "AutoTopupErrorResponse",
516
+ '500': None,
517
+ }
518
+ response_data = await self.api_client.call_api(
519
+ *_param,
520
+ _request_timeout=_request_timeout
521
+ )
522
+ return response_data.response
523
+
524
+
525
+ def _disable_auto_top_up_serialize(
526
+ self,
527
+ _request_auth,
528
+ _content_type,
529
+ _headers,
530
+ _host_index,
531
+ ) -> RequestSerialized:
532
+
533
+ _host = None
534
+
535
+ _collection_formats: Dict[str, str] = {
536
+ }
537
+
538
+ _path_params: Dict[str, str] = {}
539
+ _query_params: List[Tuple[str, str]] = []
540
+ _header_params: Dict[str, Optional[str]] = _headers or {}
541
+ _form_params: List[Tuple[str, str]] = []
542
+ _files: Dict[
543
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
544
+ ] = {}
545
+ _body_params: Optional[bytes] = None
546
+
547
+ # process the path parameters
548
+ # process the query parameters
549
+ # process the header parameters
550
+ # process the form parameters
551
+ # process the body parameter
552
+
553
+
554
+ # set the HTTP header `Accept`
555
+ if 'Accept' not in _header_params:
556
+ _header_params['Accept'] = self.api_client.select_header_accept(
557
+ [
558
+ 'application/json'
559
+ ]
560
+ )
561
+
562
+
563
+ # authentication setting
564
+ _auth_settings: List[str] = [
565
+ 'apiKey'
566
+ ]
567
+
568
+ return self.api_client.param_serialize(
569
+ method='DELETE',
570
+ resource_path='/billing/auto-topup',
571
+ path_params=_path_params,
572
+ query_params=_query_params,
573
+ header_params=_header_params,
574
+ body=_body_params,
575
+ post_params=_form_params,
576
+ files=_files,
577
+ auth_settings=_auth_settings,
578
+ collection_formats=_collection_formats,
579
+ _host=_host,
580
+ _request_auth=_request_auth
581
+ )
582
+
583
+
584
+
585
+
586
+ @validate_call
587
+ async def get_auto_top_up(
588
+ self,
589
+ _request_timeout: Union[
590
+ None,
591
+ Annotated[StrictFloat, Field(gt=0)],
592
+ Tuple[
593
+ Annotated[StrictFloat, Field(gt=0)],
594
+ Annotated[StrictFloat, Field(gt=0)]
595
+ ]
596
+ ] = None,
597
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
598
+ _content_type: Optional[StrictStr] = None,
599
+ _headers: Optional[Dict[StrictStr, Any]] = None,
600
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
601
+ ) -> GetAutoTopupResponse:
602
+ """Retrieve the current auto top up configuration and transaction history
603
+
604
+
605
+ :param _request_timeout: timeout setting for this request. If one
606
+ number provided, it will be total request
607
+ timeout. It can also be a pair (tuple) of
608
+ (connection, read) timeouts.
609
+ :type _request_timeout: int, tuple(int, int), optional
610
+ :param _request_auth: set to override the auth_settings for an a single
611
+ request; this effectively ignores the
612
+ authentication in the spec for a single request.
613
+ :type _request_auth: dict, optional
614
+ :param _content_type: force content-type for the request.
615
+ :type _content_type: str, Optional
616
+ :param _headers: set to override the headers for a single
617
+ request; this effectively ignores the headers
618
+ in the spec for a single request.
619
+ :type _headers: dict, optional
620
+ :param _host_index: set to override the host_index for a single
621
+ request; this effectively ignores the host_index
622
+ in the spec for a single request.
623
+ :type _host_index: int, optional
624
+ :return: Returns the result object.
625
+ """ # noqa: E501
626
+
627
+ _param = self._get_auto_top_up_serialize(
628
+ _request_auth=_request_auth,
629
+ _content_type=_content_type,
630
+ _headers=_headers,
631
+ _host_index=_host_index
632
+ )
633
+
634
+ _response_types_map: Dict[str, Optional[str]] = {
635
+ '200': "GetAutoTopupResponse",
636
+ '401': "AutoTopupErrorResponse",
637
+ '403': "AutoTopupErrorResponse",
638
+ '500': None,
639
+ }
640
+ response_data = await self.api_client.call_api(
641
+ *_param,
642
+ _request_timeout=_request_timeout
643
+ )
644
+ await response_data.read()
645
+ return self.api_client.response_deserialize(
646
+ response_data=response_data,
647
+ response_types_map=_response_types_map,
648
+ ).data
649
+
650
+
651
+ @validate_call
652
+ async def get_auto_top_up_with_http_info(
653
+ self,
654
+ _request_timeout: Union[
655
+ None,
656
+ Annotated[StrictFloat, Field(gt=0)],
657
+ Tuple[
658
+ Annotated[StrictFloat, Field(gt=0)],
659
+ Annotated[StrictFloat, Field(gt=0)]
660
+ ]
661
+ ] = None,
662
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
663
+ _content_type: Optional[StrictStr] = None,
664
+ _headers: Optional[Dict[StrictStr, Any]] = None,
665
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
666
+ ) -> ApiResponse[GetAutoTopupResponse]:
667
+ """Retrieve the current auto top up configuration and transaction history
668
+
669
+
670
+ :param _request_timeout: timeout setting for this request. If one
671
+ number provided, it will be total request
672
+ timeout. It can also be a pair (tuple) of
673
+ (connection, read) timeouts.
674
+ :type _request_timeout: int, tuple(int, int), optional
675
+ :param _request_auth: set to override the auth_settings for an a single
676
+ request; this effectively ignores the
677
+ authentication in the spec for a single request.
678
+ :type _request_auth: dict, optional
679
+ :param _content_type: force content-type for the request.
680
+ :type _content_type: str, Optional
681
+ :param _headers: set to override the headers for a single
682
+ request; this effectively ignores the headers
683
+ in the spec for a single request.
684
+ :type _headers: dict, optional
685
+ :param _host_index: set to override the host_index for a single
686
+ request; this effectively ignores the host_index
687
+ in the spec for a single request.
688
+ :type _host_index: int, optional
689
+ :return: Returns the result object.
690
+ """ # noqa: E501
691
+
692
+ _param = self._get_auto_top_up_serialize(
693
+ _request_auth=_request_auth,
694
+ _content_type=_content_type,
695
+ _headers=_headers,
696
+ _host_index=_host_index
697
+ )
698
+
699
+ _response_types_map: Dict[str, Optional[str]] = {
700
+ '200': "GetAutoTopupResponse",
701
+ '401': "AutoTopupErrorResponse",
702
+ '403': "AutoTopupErrorResponse",
703
+ '500': None,
704
+ }
705
+ response_data = await self.api_client.call_api(
706
+ *_param,
707
+ _request_timeout=_request_timeout
708
+ )
709
+ await response_data.read()
710
+ return self.api_client.response_deserialize(
711
+ response_data=response_data,
712
+ response_types_map=_response_types_map,
713
+ )
714
+
715
+
716
+ @validate_call
717
+ async def get_auto_top_up_without_preload_content(
718
+ self,
719
+ _request_timeout: Union[
720
+ None,
721
+ Annotated[StrictFloat, Field(gt=0)],
722
+ Tuple[
723
+ Annotated[StrictFloat, Field(gt=0)],
724
+ Annotated[StrictFloat, Field(gt=0)]
725
+ ]
726
+ ] = None,
727
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
728
+ _content_type: Optional[StrictStr] = None,
729
+ _headers: Optional[Dict[StrictStr, Any]] = None,
730
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
731
+ ) -> RESTResponseType:
732
+ """Retrieve the current auto top up configuration and transaction history
733
+
734
+
735
+ :param _request_timeout: timeout setting for this request. If one
736
+ number provided, it will be total request
737
+ timeout. It can also be a pair (tuple) of
738
+ (connection, read) timeouts.
739
+ :type _request_timeout: int, tuple(int, int), optional
740
+ :param _request_auth: set to override the auth_settings for an a single
741
+ request; this effectively ignores the
742
+ authentication in the spec for a single request.
743
+ :type _request_auth: dict, optional
744
+ :param _content_type: force content-type for the request.
745
+ :type _content_type: str, Optional
746
+ :param _headers: set to override the headers for a single
747
+ request; this effectively ignores the headers
748
+ in the spec for a single request.
749
+ :type _headers: dict, optional
750
+ :param _host_index: set to override the host_index for a single
751
+ request; this effectively ignores the host_index
752
+ in the spec for a single request.
753
+ :type _host_index: int, optional
754
+ :return: Returns the result object.
755
+ """ # noqa: E501
756
+
757
+ _param = self._get_auto_top_up_serialize(
758
+ _request_auth=_request_auth,
759
+ _content_type=_content_type,
760
+ _headers=_headers,
761
+ _host_index=_host_index
762
+ )
763
+
764
+ _response_types_map: Dict[str, Optional[str]] = {
765
+ '200': "GetAutoTopupResponse",
766
+ '401': "AutoTopupErrorResponse",
767
+ '403': "AutoTopupErrorResponse",
768
+ '500': None,
769
+ }
770
+ response_data = await self.api_client.call_api(
771
+ *_param,
772
+ _request_timeout=_request_timeout
773
+ )
774
+ return response_data.response
775
+
776
+
777
+ def _get_auto_top_up_serialize(
778
+ self,
779
+ _request_auth,
780
+ _content_type,
781
+ _headers,
782
+ _host_index,
783
+ ) -> RequestSerialized:
784
+
785
+ _host = None
786
+
787
+ _collection_formats: Dict[str, str] = {
788
+ }
789
+
790
+ _path_params: Dict[str, str] = {}
791
+ _query_params: List[Tuple[str, str]] = []
792
+ _header_params: Dict[str, Optional[str]] = _headers or {}
793
+ _form_params: List[Tuple[str, str]] = []
794
+ _files: Dict[
795
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
796
+ ] = {}
797
+ _body_params: Optional[bytes] = None
798
+
799
+ # process the path parameters
800
+ # process the query parameters
801
+ # process the header parameters
802
+ # process the form parameters
803
+ # process the body parameter
804
+
805
+
806
+ # set the HTTP header `Accept`
807
+ if 'Accept' not in _header_params:
808
+ _header_params['Accept'] = self.api_client.select_header_accept(
809
+ [
810
+ 'application/json'
811
+ ]
812
+ )
813
+
814
+
815
+ # authentication setting
816
+ _auth_settings: List[str] = [
817
+ 'apiKey'
818
+ ]
819
+
820
+ return self.api_client.param_serialize(
821
+ method='GET',
822
+ resource_path='/billing/auto-topup',
823
+ path_params=_path_params,
824
+ query_params=_query_params,
825
+ header_params=_header_params,
826
+ body=_body_params,
827
+ post_params=_form_params,
828
+ files=_files,
829
+ auth_settings=_auth_settings,
830
+ collection_formats=_collection_formats,
831
+ _host=_host,
832
+ _request_auth=_request_auth
833
+ )
834
+
835
+
836
+
837
+
838
+ @validate_call
839
+ async def get_auto_top_up_status(
840
+ self,
841
+ _request_timeout: Union[
842
+ None,
843
+ Annotated[StrictFloat, Field(gt=0)],
844
+ Tuple[
845
+ Annotated[StrictFloat, Field(gt=0)],
846
+ Annotated[StrictFloat, Field(gt=0)]
847
+ ]
848
+ ] = None,
849
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
850
+ _content_type: Optional[StrictStr] = None,
851
+ _headers: Optional[Dict[StrictStr, Any]] = None,
852
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
853
+ ) -> AutoTopupStatusSchema:
854
+ """Get auto top-up status and configuration
855
+
856
+ Retrieves the current auto top-up configuration and status for your organization. Returns the status (active, disabled, pending_setup, or null if never configured), along with the threshold and top-up amounts. For additional information, [**click here**](None/docs/api-reference/billing-resources/).
857
+
858
+ :param _request_timeout: timeout setting for this request. If one
859
+ number provided, it will be total request
860
+ timeout. It can also be a pair (tuple) of
861
+ (connection, read) timeouts.
862
+ :type _request_timeout: int, tuple(int, int), optional
863
+ :param _request_auth: set to override the auth_settings for an a single
864
+ request; this effectively ignores the
865
+ authentication in the spec for a single request.
866
+ :type _request_auth: dict, optional
867
+ :param _content_type: force content-type for the request.
868
+ :type _content_type: str, Optional
869
+ :param _headers: set to override the headers for a single
870
+ request; this effectively ignores the headers
871
+ in the spec for a single request.
872
+ :type _headers: dict, optional
873
+ :param _host_index: set to override the host_index for a single
874
+ request; this effectively ignores the host_index
875
+ in the spec for a single request.
876
+ :type _host_index: int, optional
877
+ :return: Returns the result object.
878
+ """ # noqa: E501
879
+
880
+ _param = self._get_auto_top_up_status_serialize(
881
+ _request_auth=_request_auth,
882
+ _content_type=_content_type,
883
+ _headers=_headers,
884
+ _host_index=_host_index
885
+ )
886
+
887
+ _response_types_map: Dict[str, Optional[str]] = {
888
+ '200': "AutoTopupStatusSchema",
889
+ '401': "AutoTopupErrorResponse",
890
+ '403': "AutoTopupErrorResponse",
891
+ '500': None,
892
+ }
893
+ response_data = await self.api_client.call_api(
894
+ *_param,
895
+ _request_timeout=_request_timeout
896
+ )
897
+ await response_data.read()
898
+ return self.api_client.response_deserialize(
899
+ response_data=response_data,
900
+ response_types_map=_response_types_map,
901
+ ).data
902
+
903
+
904
+ @validate_call
905
+ async def get_auto_top_up_status_with_http_info(
906
+ self,
907
+ _request_timeout: Union[
908
+ None,
909
+ Annotated[StrictFloat, Field(gt=0)],
910
+ Tuple[
911
+ Annotated[StrictFloat, Field(gt=0)],
912
+ Annotated[StrictFloat, Field(gt=0)]
913
+ ]
914
+ ] = None,
915
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
916
+ _content_type: Optional[StrictStr] = None,
917
+ _headers: Optional[Dict[StrictStr, Any]] = None,
918
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
919
+ ) -> ApiResponse[AutoTopupStatusSchema]:
920
+ """Get auto top-up status and configuration
921
+
922
+ Retrieves the current auto top-up configuration and status for your organization. Returns the status (active, disabled, pending_setup, or null if never configured), along with the threshold and top-up amounts. For additional information, [**click here**](None/docs/api-reference/billing-resources/).
923
+
924
+ :param _request_timeout: timeout setting for this request. If one
925
+ number provided, it will be total request
926
+ timeout. It can also be a pair (tuple) of
927
+ (connection, read) timeouts.
928
+ :type _request_timeout: int, tuple(int, int), optional
929
+ :param _request_auth: set to override the auth_settings for an a single
930
+ request; this effectively ignores the
931
+ authentication in the spec for a single request.
932
+ :type _request_auth: dict, optional
933
+ :param _content_type: force content-type for the request.
934
+ :type _content_type: str, Optional
935
+ :param _headers: set to override the headers for a single
936
+ request; this effectively ignores the headers
937
+ in the spec for a single request.
938
+ :type _headers: dict, optional
939
+ :param _host_index: set to override the host_index for a single
940
+ request; this effectively ignores the host_index
941
+ in the spec for a single request.
942
+ :type _host_index: int, optional
943
+ :return: Returns the result object.
944
+ """ # noqa: E501
945
+
946
+ _param = self._get_auto_top_up_status_serialize(
947
+ _request_auth=_request_auth,
948
+ _content_type=_content_type,
949
+ _headers=_headers,
950
+ _host_index=_host_index
951
+ )
952
+
953
+ _response_types_map: Dict[str, Optional[str]] = {
954
+ '200': "AutoTopupStatusSchema",
955
+ '401': "AutoTopupErrorResponse",
956
+ '403': "AutoTopupErrorResponse",
957
+ '500': None,
958
+ }
959
+ response_data = await self.api_client.call_api(
960
+ *_param,
961
+ _request_timeout=_request_timeout
962
+ )
963
+ await response_data.read()
964
+ return self.api_client.response_deserialize(
965
+ response_data=response_data,
966
+ response_types_map=_response_types_map,
967
+ )
968
+
969
+
970
+ @validate_call
971
+ async def get_auto_top_up_status_without_preload_content(
972
+ self,
973
+ _request_timeout: Union[
974
+ None,
975
+ Annotated[StrictFloat, Field(gt=0)],
976
+ Tuple[
977
+ Annotated[StrictFloat, Field(gt=0)],
978
+ Annotated[StrictFloat, Field(gt=0)]
979
+ ]
980
+ ] = None,
981
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
982
+ _content_type: Optional[StrictStr] = None,
983
+ _headers: Optional[Dict[StrictStr, Any]] = None,
984
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
985
+ ) -> RESTResponseType:
986
+ """Get auto top-up status and configuration
987
+
988
+ Retrieves the current auto top-up configuration and status for your organization. Returns the status (active, disabled, pending_setup, or null if never configured), along with the threshold and top-up amounts. For additional information, [**click here**](None/docs/api-reference/billing-resources/).
989
+
990
+ :param _request_timeout: timeout setting for this request. If one
991
+ number provided, it will be total request
992
+ timeout. It can also be a pair (tuple) of
993
+ (connection, read) timeouts.
994
+ :type _request_timeout: int, tuple(int, int), optional
995
+ :param _request_auth: set to override the auth_settings for an a single
996
+ request; this effectively ignores the
997
+ authentication in the spec for a single request.
998
+ :type _request_auth: dict, optional
999
+ :param _content_type: force content-type for the request.
1000
+ :type _content_type: str, Optional
1001
+ :param _headers: set to override the headers for a single
1002
+ request; this effectively ignores the headers
1003
+ in the spec for a single request.
1004
+ :type _headers: dict, optional
1005
+ :param _host_index: set to override the host_index for a single
1006
+ request; this effectively ignores the host_index
1007
+ in the spec for a single request.
1008
+ :type _host_index: int, optional
1009
+ :return: Returns the result object.
1010
+ """ # noqa: E501
1011
+
1012
+ _param = self._get_auto_top_up_status_serialize(
1013
+ _request_auth=_request_auth,
1014
+ _content_type=_content_type,
1015
+ _headers=_headers,
1016
+ _host_index=_host_index
1017
+ )
1018
+
1019
+ _response_types_map: Dict[str, Optional[str]] = {
1020
+ '200': "AutoTopupStatusSchema",
1021
+ '401': "AutoTopupErrorResponse",
1022
+ '403': "AutoTopupErrorResponse",
1023
+ '500': None,
1024
+ }
1025
+ response_data = await self.api_client.call_api(
1026
+ *_param,
1027
+ _request_timeout=_request_timeout
1028
+ )
1029
+ return response_data.response
1030
+
1031
+
1032
+ def _get_auto_top_up_status_serialize(
1033
+ self,
1034
+ _request_auth,
1035
+ _content_type,
1036
+ _headers,
1037
+ _host_index,
1038
+ ) -> RequestSerialized:
1039
+
1040
+ _host = None
1041
+
1042
+ _collection_formats: Dict[str, str] = {
1043
+ }
1044
+
1045
+ _path_params: Dict[str, str] = {}
1046
+ _query_params: List[Tuple[str, str]] = []
1047
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1048
+ _form_params: List[Tuple[str, str]] = []
1049
+ _files: Dict[
1050
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1051
+ ] = {}
1052
+ _body_params: Optional[bytes] = None
1053
+
1054
+ # process the path parameters
1055
+ # process the query parameters
1056
+ # process the header parameters
1057
+ # process the form parameters
1058
+ # process the body parameter
1059
+
1060
+
1061
+ # set the HTTP header `Accept`
1062
+ if 'Accept' not in _header_params:
1063
+ _header_params['Accept'] = self.api_client.select_header_accept(
1064
+ [
1065
+ 'application/json'
1066
+ ]
1067
+ )
1068
+
1069
+
1070
+ # authentication setting
1071
+ _auth_settings: List[str] = [
1072
+ 'apiKey'
1073
+ ]
1074
+
1075
+ return self.api_client.param_serialize(
1076
+ method='GET',
1077
+ resource_path='/billing/auto-topup/status',
1078
+ path_params=_path_params,
1079
+ query_params=_query_params,
1080
+ header_params=_header_params,
1081
+ body=_body_params,
1082
+ post_params=_form_params,
1083
+ files=_files,
1084
+ auth_settings=_auth_settings,
1085
+ collection_formats=_collection_formats,
1086
+ _host=_host,
1087
+ _request_auth=_request_auth
1088
+ )
1089
+
1090
+
1091
+
1092
+
1093
+ @validate_call
1094
+ async def update_auto_top_up(
1095
+ self,
1096
+ payload: UpdateAutoTopupPayload,
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
+ ) -> UpdateAutoTopupResponse:
1110
+ """Update an existing active auto top up configuration
1111
+
1112
+
1113
+ :param payload: (required)
1114
+ :type payload: UpdateAutoTopupPayload
1115
+ :param _request_timeout: timeout setting for this request. If one
1116
+ number provided, it will be total request
1117
+ timeout. It can also be a pair (tuple) of
1118
+ (connection, read) timeouts.
1119
+ :type _request_timeout: int, tuple(int, int), optional
1120
+ :param _request_auth: set to override the auth_settings for an a single
1121
+ request; this effectively ignores the
1122
+ authentication in the spec for a single request.
1123
+ :type _request_auth: dict, optional
1124
+ :param _content_type: force content-type for the request.
1125
+ :type _content_type: str, Optional
1126
+ :param _headers: set to override the headers for a single
1127
+ request; this effectively ignores the headers
1128
+ in the spec for a single request.
1129
+ :type _headers: dict, optional
1130
+ :param _host_index: set to override the host_index for a single
1131
+ request; this effectively ignores the host_index
1132
+ in the spec for a single request.
1133
+ :type _host_index: int, optional
1134
+ :return: Returns the result object.
1135
+ """ # noqa: E501
1136
+
1137
+ _param = self._update_auto_top_up_serialize(
1138
+ payload=payload,
1139
+ _request_auth=_request_auth,
1140
+ _content_type=_content_type,
1141
+ _headers=_headers,
1142
+ _host_index=_host_index
1143
+ )
1144
+
1145
+ _response_types_map: Dict[str, Optional[str]] = {
1146
+ '200': "UpdateAutoTopupResponse",
1147
+ '400': "AutoTopupErrorResponse",
1148
+ '401': "AutoTopupErrorResponse",
1149
+ '403': "AutoTopupErrorResponse",
1150
+ '404': "AutoTopupErrorResponse",
1151
+ '500': None,
1152
+ }
1153
+ response_data = await self.api_client.call_api(
1154
+ *_param,
1155
+ _request_timeout=_request_timeout
1156
+ )
1157
+ await response_data.read()
1158
+ return self.api_client.response_deserialize(
1159
+ response_data=response_data,
1160
+ response_types_map=_response_types_map,
1161
+ ).data
1162
+
1163
+
1164
+ @validate_call
1165
+ async def update_auto_top_up_with_http_info(
1166
+ self,
1167
+ payload: UpdateAutoTopupPayload,
1168
+ _request_timeout: Union[
1169
+ None,
1170
+ Annotated[StrictFloat, Field(gt=0)],
1171
+ Tuple[
1172
+ Annotated[StrictFloat, Field(gt=0)],
1173
+ Annotated[StrictFloat, Field(gt=0)]
1174
+ ]
1175
+ ] = None,
1176
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1177
+ _content_type: Optional[StrictStr] = None,
1178
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1179
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1180
+ ) -> ApiResponse[UpdateAutoTopupResponse]:
1181
+ """Update an existing active auto top up configuration
1182
+
1183
+
1184
+ :param payload: (required)
1185
+ :type payload: UpdateAutoTopupPayload
1186
+ :param _request_timeout: timeout setting for this request. If one
1187
+ number provided, it will be total request
1188
+ timeout. It can also be a pair (tuple) of
1189
+ (connection, read) timeouts.
1190
+ :type _request_timeout: int, tuple(int, int), optional
1191
+ :param _request_auth: set to override the auth_settings for an a single
1192
+ request; this effectively ignores the
1193
+ authentication in the spec for a single request.
1194
+ :type _request_auth: dict, optional
1195
+ :param _content_type: force content-type for the request.
1196
+ :type _content_type: str, Optional
1197
+ :param _headers: set to override the headers for a single
1198
+ request; this effectively ignores the headers
1199
+ in the spec for a single request.
1200
+ :type _headers: dict, optional
1201
+ :param _host_index: set to override the host_index for a single
1202
+ request; this effectively ignores the host_index
1203
+ in the spec for a single request.
1204
+ :type _host_index: int, optional
1205
+ :return: Returns the result object.
1206
+ """ # noqa: E501
1207
+
1208
+ _param = self._update_auto_top_up_serialize(
1209
+ payload=payload,
1210
+ _request_auth=_request_auth,
1211
+ _content_type=_content_type,
1212
+ _headers=_headers,
1213
+ _host_index=_host_index
1214
+ )
1215
+
1216
+ _response_types_map: Dict[str, Optional[str]] = {
1217
+ '200': "UpdateAutoTopupResponse",
1218
+ '400': "AutoTopupErrorResponse",
1219
+ '401': "AutoTopupErrorResponse",
1220
+ '403': "AutoTopupErrorResponse",
1221
+ '404': "AutoTopupErrorResponse",
1222
+ '500': None,
1223
+ }
1224
+ response_data = await self.api_client.call_api(
1225
+ *_param,
1226
+ _request_timeout=_request_timeout
1227
+ )
1228
+ await response_data.read()
1229
+ return self.api_client.response_deserialize(
1230
+ response_data=response_data,
1231
+ response_types_map=_response_types_map,
1232
+ )
1233
+
1234
+
1235
+ @validate_call
1236
+ async def update_auto_top_up_without_preload_content(
1237
+ self,
1238
+ payload: UpdateAutoTopupPayload,
1239
+ _request_timeout: Union[
1240
+ None,
1241
+ Annotated[StrictFloat, Field(gt=0)],
1242
+ Tuple[
1243
+ Annotated[StrictFloat, Field(gt=0)],
1244
+ Annotated[StrictFloat, Field(gt=0)]
1245
+ ]
1246
+ ] = None,
1247
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1248
+ _content_type: Optional[StrictStr] = None,
1249
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1250
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1251
+ ) -> RESTResponseType:
1252
+ """Update an existing active auto top up configuration
1253
+
1254
+
1255
+ :param payload: (required)
1256
+ :type payload: UpdateAutoTopupPayload
1257
+ :param _request_timeout: timeout setting for this request. If one
1258
+ number provided, it will be total request
1259
+ timeout. It can also be a pair (tuple) of
1260
+ (connection, read) timeouts.
1261
+ :type _request_timeout: int, tuple(int, int), optional
1262
+ :param _request_auth: set to override the auth_settings for an a single
1263
+ request; this effectively ignores the
1264
+ authentication in the spec for a single request.
1265
+ :type _request_auth: dict, optional
1266
+ :param _content_type: force content-type for the request.
1267
+ :type _content_type: str, Optional
1268
+ :param _headers: set to override the headers for a single
1269
+ request; this effectively ignores the headers
1270
+ in the spec for a single request.
1271
+ :type _headers: dict, optional
1272
+ :param _host_index: set to override the host_index for a single
1273
+ request; this effectively ignores the host_index
1274
+ in the spec for a single request.
1275
+ :type _host_index: int, optional
1276
+ :return: Returns the result object.
1277
+ """ # noqa: E501
1278
+
1279
+ _param = self._update_auto_top_up_serialize(
1280
+ payload=payload,
1281
+ _request_auth=_request_auth,
1282
+ _content_type=_content_type,
1283
+ _headers=_headers,
1284
+ _host_index=_host_index
1285
+ )
1286
+
1287
+ _response_types_map: Dict[str, Optional[str]] = {
1288
+ '200': "UpdateAutoTopupResponse",
1289
+ '400': "AutoTopupErrorResponse",
1290
+ '401': "AutoTopupErrorResponse",
1291
+ '403': "AutoTopupErrorResponse",
1292
+ '404': "AutoTopupErrorResponse",
1293
+ '500': None,
1294
+ }
1295
+ response_data = await self.api_client.call_api(
1296
+ *_param,
1297
+ _request_timeout=_request_timeout
1298
+ )
1299
+ return response_data.response
1300
+
1301
+
1302
+ def _update_auto_top_up_serialize(
1303
+ self,
1304
+ payload,
1305
+ _request_auth,
1306
+ _content_type,
1307
+ _headers,
1308
+ _host_index,
1309
+ ) -> RequestSerialized:
1310
+
1311
+ _host = None
1312
+
1313
+ _collection_formats: Dict[str, str] = {
1314
+ }
1315
+
1316
+ _path_params: Dict[str, str] = {}
1317
+ _query_params: List[Tuple[str, str]] = []
1318
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1319
+ _form_params: List[Tuple[str, str]] = []
1320
+ _files: Dict[
1321
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1322
+ ] = {}
1323
+ _body_params: Optional[bytes] = None
1324
+
1325
+ # process the path parameters
1326
+ # process the query parameters
1327
+ # process the header parameters
1328
+ # process the form parameters
1329
+ # process the body parameter
1330
+ if payload is not None:
1331
+ _body_params = payload
1332
+
1333
+
1334
+ # set the HTTP header `Accept`
1335
+ if 'Accept' not in _header_params:
1336
+ _header_params['Accept'] = self.api_client.select_header_accept(
1337
+ [
1338
+ 'application/json'
1339
+ ]
1340
+ )
1341
+
1342
+ # set the HTTP header `Content-Type`
1343
+ if _content_type:
1344
+ _header_params['Content-Type'] = _content_type
1345
+ else:
1346
+ _default_content_type = (
1347
+ self.api_client.select_header_content_type(
1348
+ [
1349
+ 'application/json'
1350
+ ]
1351
+ )
1352
+ )
1353
+ if _default_content_type is not None:
1354
+ _header_params['Content-Type'] = _default_content_type
1355
+
1356
+ # authentication setting
1357
+ _auth_settings: List[str] = [
1358
+ 'apiKey'
1359
+ ]
1360
+
1361
+ return self.api_client.param_serialize(
1362
+ method='PUT',
1363
+ resource_path='/billing/auto-topup',
1364
+ path_params=_path_params,
1365
+ query_params=_query_params,
1366
+ header_params=_header_params,
1367
+ body=_body_params,
1368
+ post_params=_form_params,
1369
+ files=_files,
1370
+ auth_settings=_auth_settings,
1371
+ collection_formats=_collection_formats,
1372
+ _host=_host,
1373
+ _request_auth=_request_auth
1374
+ )
1375
+
1376
+