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,1416 @@
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 pydantic import Field, StrictStr
20
+ from typing import Optional
21
+ from typing_extensions import Annotated
22
+ from ..models.consent_action_response import ConsentActionResponse
23
+ from ..models.consent_template import ConsentTemplate
24
+ from ..models.consent_templates_response import ConsentTemplatesResponse
25
+ from ..models.record_consent_request import RecordConsentRequest
26
+ from ..models.update_consent_request import UpdateConsentRequest
27
+ from ..models.user_consents_response import UserConsentsResponse
28
+
29
+ from ..api_client import ApiClient, RequestSerialized
30
+ from ..api_response import ApiResponse
31
+ from ..rest import RESTResponseType
32
+
33
+
34
+ class UserConsentApi:
35
+ """NOTE: This class is auto generated by OpenAPI Generator
36
+ Ref: https://openapi-generator.tech
37
+
38
+ Do not edit the class manually.
39
+ """
40
+
41
+ def __init__(self, api_client=None) -> None:
42
+ if api_client is None:
43
+ api_client = ApiClient.get_default()
44
+ self.api_client = api_client
45
+
46
+
47
+ @validate_call
48
+ async def add_a_new_consent_for_a_user(
49
+ self,
50
+ payload: RecordConsentRequest,
51
+ _request_timeout: Union[
52
+ None,
53
+ Annotated[StrictFloat, Field(gt=0)],
54
+ Tuple[
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Annotated[StrictFloat, Field(gt=0)]
57
+ ]
58
+ ] = None,
59
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
60
+ _content_type: Optional[StrictStr] = None,
61
+ _headers: Optional[Dict[StrictStr, Any]] = None,
62
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
63
+ ) -> ConsentActionResponse:
64
+ """Add a new User consent
65
+
66
+ Add a new consent given by the User
67
+
68
+ :param payload: (required)
69
+ :type payload: RecordConsentRequest
70
+ :param _request_timeout: timeout setting for this request. If one
71
+ number provided, it will be total request
72
+ timeout. It can also be a pair (tuple) of
73
+ (connection, read) timeouts.
74
+ :type _request_timeout: int, tuple(int, int), optional
75
+ :param _request_auth: set to override the auth_settings for an a single
76
+ request; this effectively ignores the
77
+ authentication in the spec for a single request.
78
+ :type _request_auth: dict, optional
79
+ :param _content_type: force content-type for the request.
80
+ :type _content_type: str, Optional
81
+ :param _headers: set to override the headers for a single
82
+ request; this effectively ignores the headers
83
+ in the spec for a single request.
84
+ :type _headers: dict, optional
85
+ :param _host_index: set to override the host_index for a single
86
+ request; this effectively ignores the host_index
87
+ in the spec for a single request.
88
+ :type _host_index: int, optional
89
+ :return: Returns the result object.
90
+ """ # noqa: E501
91
+
92
+ _param = self._add_a_new_consent_for_a_user_serialize(
93
+ payload=payload,
94
+ _request_auth=_request_auth,
95
+ _content_type=_content_type,
96
+ _headers=_headers,
97
+ _host_index=_host_index
98
+ )
99
+
100
+ _response_types_map: Dict[str, Optional[str]] = {
101
+ '200': "ConsentActionResponse",
102
+ '400': "ErrorResponseModel",
103
+ '404': "ErrorResponseModel",
104
+ '500': None,
105
+ }
106
+ response_data = await self.api_client.call_api(
107
+ *_param,
108
+ _request_timeout=_request_timeout
109
+ )
110
+ await response_data.read()
111
+ return self.api_client.response_deserialize(
112
+ response_data=response_data,
113
+ response_types_map=_response_types_map,
114
+ ).data
115
+
116
+
117
+ @validate_call
118
+ async def add_a_new_consent_for_a_user_with_http_info(
119
+ self,
120
+ payload: RecordConsentRequest,
121
+ _request_timeout: Union[
122
+ None,
123
+ Annotated[StrictFloat, Field(gt=0)],
124
+ Tuple[
125
+ Annotated[StrictFloat, Field(gt=0)],
126
+ Annotated[StrictFloat, Field(gt=0)]
127
+ ]
128
+ ] = None,
129
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
130
+ _content_type: Optional[StrictStr] = None,
131
+ _headers: Optional[Dict[StrictStr, Any]] = None,
132
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
133
+ ) -> ApiResponse[ConsentActionResponse]:
134
+ """Add a new User consent
135
+
136
+ Add a new consent given by the User
137
+
138
+ :param payload: (required)
139
+ :type payload: RecordConsentRequest
140
+ :param _request_timeout: timeout setting for this request. If one
141
+ number provided, it will be total request
142
+ timeout. It can also be a pair (tuple) of
143
+ (connection, read) timeouts.
144
+ :type _request_timeout: int, tuple(int, int), optional
145
+ :param _request_auth: set to override the auth_settings for an a single
146
+ request; this effectively ignores the
147
+ authentication in the spec for a single request.
148
+ :type _request_auth: dict, optional
149
+ :param _content_type: force content-type for the request.
150
+ :type _content_type: str, Optional
151
+ :param _headers: set to override the headers for a single
152
+ request; this effectively ignores the headers
153
+ in the spec for a single request.
154
+ :type _headers: dict, optional
155
+ :param _host_index: set to override the host_index for a single
156
+ request; this effectively ignores the host_index
157
+ in the spec for a single request.
158
+ :type _host_index: int, optional
159
+ :return: Returns the result object.
160
+ """ # noqa: E501
161
+
162
+ _param = self._add_a_new_consent_for_a_user_serialize(
163
+ payload=payload,
164
+ _request_auth=_request_auth,
165
+ _content_type=_content_type,
166
+ _headers=_headers,
167
+ _host_index=_host_index
168
+ )
169
+
170
+ _response_types_map: Dict[str, Optional[str]] = {
171
+ '200': "ConsentActionResponse",
172
+ '400': "ErrorResponseModel",
173
+ '404': "ErrorResponseModel",
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 add_a_new_consent_for_a_user_without_preload_content(
189
+ self,
190
+ payload: RecordConsentRequest,
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
+ """Add a new User consent
205
+
206
+ Add a new consent given by the User
207
+
208
+ :param payload: (required)
209
+ :type payload: RecordConsentRequest
210
+ :param _request_timeout: timeout setting for this request. If one
211
+ number provided, it will be total request
212
+ timeout. It can also be a pair (tuple) of
213
+ (connection, read) timeouts.
214
+ :type _request_timeout: int, tuple(int, int), optional
215
+ :param _request_auth: set to override the auth_settings for an a single
216
+ request; this effectively ignores the
217
+ authentication in the spec for a single request.
218
+ :type _request_auth: dict, optional
219
+ :param _content_type: force content-type for the request.
220
+ :type _content_type: str, Optional
221
+ :param _headers: set to override the headers for a single
222
+ request; this effectively ignores the headers
223
+ in the spec for a single request.
224
+ :type _headers: dict, optional
225
+ :param _host_index: set to override the host_index for a single
226
+ request; this effectively ignores the host_index
227
+ in the spec for a single request.
228
+ :type _host_index: int, optional
229
+ :return: Returns the result object.
230
+ """ # noqa: E501
231
+
232
+ _param = self._add_a_new_consent_for_a_user_serialize(
233
+ payload=payload,
234
+ _request_auth=_request_auth,
235
+ _content_type=_content_type,
236
+ _headers=_headers,
237
+ _host_index=_host_index
238
+ )
239
+
240
+ _response_types_map: Dict[str, Optional[str]] = {
241
+ '200': "ConsentActionResponse",
242
+ '400': "ErrorResponseModel",
243
+ '404': "ErrorResponseModel",
244
+ '500': None,
245
+ }
246
+ response_data = await self.api_client.call_api(
247
+ *_param,
248
+ _request_timeout=_request_timeout
249
+ )
250
+ return response_data.response
251
+
252
+
253
+ def _add_a_new_consent_for_a_user_serialize(
254
+ self,
255
+ payload,
256
+ _request_auth,
257
+ _content_type,
258
+ _headers,
259
+ _host_index,
260
+ ) -> RequestSerialized:
261
+
262
+ _host = None
263
+
264
+ _collection_formats: Dict[str, str] = {
265
+ }
266
+
267
+ _path_params: Dict[str, str] = {}
268
+ _query_params: List[Tuple[str, str]] = []
269
+ _header_params: Dict[str, Optional[str]] = _headers or {}
270
+ _form_params: List[Tuple[str, str]] = []
271
+ _files: Dict[
272
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
273
+ ] = {}
274
+ _body_params: Optional[bytes] = None
275
+
276
+ # process the path parameters
277
+ # process the query parameters
278
+ # process the header parameters
279
+ # process the form parameters
280
+ # process the body parameter
281
+ if payload is not None:
282
+ _body_params = payload
283
+
284
+
285
+ # set the HTTP header `Accept`
286
+ if 'Accept' not in _header_params:
287
+ _header_params['Accept'] = self.api_client.select_header_accept(
288
+ [
289
+ 'application/json'
290
+ ]
291
+ )
292
+
293
+ # set the HTTP header `Content-Type`
294
+ if _content_type:
295
+ _header_params['Content-Type'] = _content_type
296
+ else:
297
+ _default_content_type = (
298
+ self.api_client.select_header_content_type(
299
+ [
300
+ 'application/json'
301
+ ]
302
+ )
303
+ )
304
+ if _default_content_type is not None:
305
+ _header_params['Content-Type'] = _default_content_type
306
+
307
+ # authentication setting
308
+ _auth_settings: List[str] = [
309
+ 'apiKey'
310
+ ]
311
+
312
+ return self.api_client.param_serialize(
313
+ method='POST',
314
+ resource_path='/auth/user-consent',
315
+ path_params=_path_params,
316
+ query_params=_query_params,
317
+ header_params=_header_params,
318
+ body=_body_params,
319
+ post_params=_form_params,
320
+ files=_files,
321
+ auth_settings=_auth_settings,
322
+ collection_formats=_collection_formats,
323
+ _host=_host,
324
+ _request_auth=_request_auth
325
+ )
326
+
327
+
328
+
329
+
330
+ @validate_call
331
+ async def get_all_consent_templates(
332
+ self,
333
+ _request_timeout: Union[
334
+ None,
335
+ Annotated[StrictFloat, Field(gt=0)],
336
+ Tuple[
337
+ Annotated[StrictFloat, Field(gt=0)],
338
+ Annotated[StrictFloat, Field(gt=0)]
339
+ ]
340
+ ] = None,
341
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
342
+ _content_type: Optional[StrictStr] = None,
343
+ _headers: Optional[Dict[StrictStr, Any]] = None,
344
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
345
+ ) -> ConsentTemplatesResponse:
346
+ """Get all consent templates
347
+
348
+ Returns current consent templates for all consent types
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._get_all_consent_templates_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': "ConsentTemplatesResponse",
381
+ '401': "ErrorResponseModel",
382
+ }
383
+ response_data = await self.api_client.call_api(
384
+ *_param,
385
+ _request_timeout=_request_timeout
386
+ )
387
+ await response_data.read()
388
+ return self.api_client.response_deserialize(
389
+ response_data=response_data,
390
+ response_types_map=_response_types_map,
391
+ ).data
392
+
393
+
394
+ @validate_call
395
+ async def get_all_consent_templates_with_http_info(
396
+ self,
397
+ _request_timeout: Union[
398
+ None,
399
+ Annotated[StrictFloat, Field(gt=0)],
400
+ Tuple[
401
+ Annotated[StrictFloat, Field(gt=0)],
402
+ Annotated[StrictFloat, Field(gt=0)]
403
+ ]
404
+ ] = None,
405
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
406
+ _content_type: Optional[StrictStr] = None,
407
+ _headers: Optional[Dict[StrictStr, Any]] = None,
408
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
409
+ ) -> ApiResponse[ConsentTemplatesResponse]:
410
+ """Get all consent templates
411
+
412
+ Returns current consent templates for all consent types
413
+
414
+ :param _request_timeout: timeout setting for this request. If one
415
+ number provided, it will be total request
416
+ timeout. It can also be a pair (tuple) of
417
+ (connection, read) timeouts.
418
+ :type _request_timeout: int, tuple(int, int), optional
419
+ :param _request_auth: set to override the auth_settings for an a single
420
+ request; this effectively ignores the
421
+ authentication in the spec for a single request.
422
+ :type _request_auth: dict, optional
423
+ :param _content_type: force content-type for the request.
424
+ :type _content_type: str, Optional
425
+ :param _headers: set to override the headers for a single
426
+ request; this effectively ignores the headers
427
+ in the spec for a single request.
428
+ :type _headers: dict, optional
429
+ :param _host_index: set to override the host_index for a single
430
+ request; this effectively ignores the host_index
431
+ in the spec for a single request.
432
+ :type _host_index: int, optional
433
+ :return: Returns the result object.
434
+ """ # noqa: E501
435
+
436
+ _param = self._get_all_consent_templates_serialize(
437
+ _request_auth=_request_auth,
438
+ _content_type=_content_type,
439
+ _headers=_headers,
440
+ _host_index=_host_index
441
+ )
442
+
443
+ _response_types_map: Dict[str, Optional[str]] = {
444
+ '200': "ConsentTemplatesResponse",
445
+ '401': "ErrorResponseModel",
446
+ }
447
+ response_data = await self.api_client.call_api(
448
+ *_param,
449
+ _request_timeout=_request_timeout
450
+ )
451
+ await response_data.read()
452
+ return self.api_client.response_deserialize(
453
+ response_data=response_data,
454
+ response_types_map=_response_types_map,
455
+ )
456
+
457
+
458
+ @validate_call
459
+ async def get_all_consent_templates_without_preload_content(
460
+ self,
461
+ _request_timeout: Union[
462
+ None,
463
+ Annotated[StrictFloat, Field(gt=0)],
464
+ Tuple[
465
+ Annotated[StrictFloat, Field(gt=0)],
466
+ Annotated[StrictFloat, Field(gt=0)]
467
+ ]
468
+ ] = None,
469
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
470
+ _content_type: Optional[StrictStr] = None,
471
+ _headers: Optional[Dict[StrictStr, Any]] = None,
472
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
473
+ ) -> RESTResponseType:
474
+ """Get all consent templates
475
+
476
+ Returns current consent templates for all consent types
477
+
478
+ :param _request_timeout: timeout setting for this request. If one
479
+ number provided, it will be total request
480
+ timeout. It can also be a pair (tuple) of
481
+ (connection, read) timeouts.
482
+ :type _request_timeout: int, tuple(int, int), optional
483
+ :param _request_auth: set to override the auth_settings for an a single
484
+ request; this effectively ignores the
485
+ authentication in the spec for a single request.
486
+ :type _request_auth: dict, optional
487
+ :param _content_type: force content-type for the request.
488
+ :type _content_type: str, Optional
489
+ :param _headers: set to override the headers for a single
490
+ request; this effectively ignores the headers
491
+ in the spec for a single request.
492
+ :type _headers: dict, optional
493
+ :param _host_index: set to override the host_index for a single
494
+ request; this effectively ignores the host_index
495
+ in the spec for a single request.
496
+ :type _host_index: int, optional
497
+ :return: Returns the result object.
498
+ """ # noqa: E501
499
+
500
+ _param = self._get_all_consent_templates_serialize(
501
+ _request_auth=_request_auth,
502
+ _content_type=_content_type,
503
+ _headers=_headers,
504
+ _host_index=_host_index
505
+ )
506
+
507
+ _response_types_map: Dict[str, Optional[str]] = {
508
+ '200': "ConsentTemplatesResponse",
509
+ '401': "ErrorResponseModel",
510
+ }
511
+ response_data = await self.api_client.call_api(
512
+ *_param,
513
+ _request_timeout=_request_timeout
514
+ )
515
+ return response_data.response
516
+
517
+
518
+ def _get_all_consent_templates_serialize(
519
+ self,
520
+ _request_auth,
521
+ _content_type,
522
+ _headers,
523
+ _host_index,
524
+ ) -> RequestSerialized:
525
+
526
+ _host = None
527
+
528
+ _collection_formats: Dict[str, str] = {
529
+ }
530
+
531
+ _path_params: Dict[str, str] = {}
532
+ _query_params: List[Tuple[str, str]] = []
533
+ _header_params: Dict[str, Optional[str]] = _headers or {}
534
+ _form_params: List[Tuple[str, str]] = []
535
+ _files: Dict[
536
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
537
+ ] = {}
538
+ _body_params: Optional[bytes] = None
539
+
540
+ # process the path parameters
541
+ # process the query parameters
542
+ # process the header parameters
543
+ # process the form parameters
544
+ # process the body parameter
545
+
546
+
547
+ # set the HTTP header `Accept`
548
+ if 'Accept' not in _header_params:
549
+ _header_params['Accept'] = self.api_client.select_header_accept(
550
+ [
551
+ 'application/json'
552
+ ]
553
+ )
554
+
555
+
556
+ # authentication setting
557
+ _auth_settings: List[str] = [
558
+ 'apiKey'
559
+ ]
560
+
561
+ return self.api_client.param_serialize(
562
+ method='GET',
563
+ resource_path='/auth/user-consent/templates',
564
+ path_params=_path_params,
565
+ query_params=_query_params,
566
+ header_params=_header_params,
567
+ body=_body_params,
568
+ post_params=_form_params,
569
+ files=_files,
570
+ auth_settings=_auth_settings,
571
+ collection_formats=_collection_formats,
572
+ _host=_host,
573
+ _request_auth=_request_auth
574
+ )
575
+
576
+
577
+
578
+
579
+ @validate_call
580
+ async def get_all_consents_for_a_user(
581
+ self,
582
+ consent_type: Annotated[Optional[StrictStr], Field(description="Filter by consent type")] = None,
583
+ _request_timeout: Union[
584
+ None,
585
+ Annotated[StrictFloat, Field(gt=0)],
586
+ Tuple[
587
+ Annotated[StrictFloat, Field(gt=0)],
588
+ Annotated[StrictFloat, Field(gt=0)]
589
+ ]
590
+ ] = None,
591
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
592
+ _content_type: Optional[StrictStr] = None,
593
+ _headers: Optional[Dict[StrictStr, Any]] = None,
594
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
595
+ ) -> UserConsentsResponse:
596
+ """Get Consents for a User
597
+
598
+ Fetch all the recorded consents given from a User
599
+
600
+ :param consent_type: Filter by consent type
601
+ :type consent_type: str
602
+ :param _request_timeout: timeout setting for this request. If one
603
+ number provided, it will be total request
604
+ timeout. It can also be a pair (tuple) of
605
+ (connection, read) timeouts.
606
+ :type _request_timeout: int, tuple(int, int), optional
607
+ :param _request_auth: set to override the auth_settings for an a single
608
+ request; this effectively ignores the
609
+ authentication in the spec for a single request.
610
+ :type _request_auth: dict, optional
611
+ :param _content_type: force content-type for the request.
612
+ :type _content_type: str, Optional
613
+ :param _headers: set to override the headers for a single
614
+ request; this effectively ignores the headers
615
+ in the spec for a single request.
616
+ :type _headers: dict, optional
617
+ :param _host_index: set to override the host_index for a single
618
+ request; this effectively ignores the host_index
619
+ in the spec for a single request.
620
+ :type _host_index: int, optional
621
+ :return: Returns the result object.
622
+ """ # noqa: E501
623
+
624
+ _param = self._get_all_consents_for_a_user_serialize(
625
+ consent_type=consent_type,
626
+ _request_auth=_request_auth,
627
+ _content_type=_content_type,
628
+ _headers=_headers,
629
+ _host_index=_host_index
630
+ )
631
+
632
+ _response_types_map: Dict[str, Optional[str]] = {
633
+ '200': "UserConsentsResponse",
634
+ '400': "ErrorResponseModel",
635
+ '404': "ErrorResponseModel",
636
+ '500': None,
637
+ }
638
+ response_data = await self.api_client.call_api(
639
+ *_param,
640
+ _request_timeout=_request_timeout
641
+ )
642
+ await response_data.read()
643
+ return self.api_client.response_deserialize(
644
+ response_data=response_data,
645
+ response_types_map=_response_types_map,
646
+ ).data
647
+
648
+
649
+ @validate_call
650
+ async def get_all_consents_for_a_user_with_http_info(
651
+ self,
652
+ consent_type: Annotated[Optional[StrictStr], Field(description="Filter by consent type")] = None,
653
+ _request_timeout: Union[
654
+ None,
655
+ Annotated[StrictFloat, Field(gt=0)],
656
+ Tuple[
657
+ Annotated[StrictFloat, Field(gt=0)],
658
+ Annotated[StrictFloat, Field(gt=0)]
659
+ ]
660
+ ] = None,
661
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
662
+ _content_type: Optional[StrictStr] = None,
663
+ _headers: Optional[Dict[StrictStr, Any]] = None,
664
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
665
+ ) -> ApiResponse[UserConsentsResponse]:
666
+ """Get Consents for a User
667
+
668
+ Fetch all the recorded consents given from a User
669
+
670
+ :param consent_type: Filter by consent type
671
+ :type consent_type: str
672
+ :param _request_timeout: timeout setting for this request. If one
673
+ number provided, it will be total request
674
+ timeout. It can also be a pair (tuple) of
675
+ (connection, read) timeouts.
676
+ :type _request_timeout: int, tuple(int, int), optional
677
+ :param _request_auth: set to override the auth_settings for an a single
678
+ request; this effectively ignores the
679
+ authentication in the spec for a single request.
680
+ :type _request_auth: dict, optional
681
+ :param _content_type: force content-type for the request.
682
+ :type _content_type: str, Optional
683
+ :param _headers: set to override the headers for a single
684
+ request; this effectively ignores the headers
685
+ in the spec for a single request.
686
+ :type _headers: dict, optional
687
+ :param _host_index: set to override the host_index for a single
688
+ request; this effectively ignores the host_index
689
+ in the spec for a single request.
690
+ :type _host_index: int, optional
691
+ :return: Returns the result object.
692
+ """ # noqa: E501
693
+
694
+ _param = self._get_all_consents_for_a_user_serialize(
695
+ consent_type=consent_type,
696
+ _request_auth=_request_auth,
697
+ _content_type=_content_type,
698
+ _headers=_headers,
699
+ _host_index=_host_index
700
+ )
701
+
702
+ _response_types_map: Dict[str, Optional[str]] = {
703
+ '200': "UserConsentsResponse",
704
+ '400': "ErrorResponseModel",
705
+ '404': "ErrorResponseModel",
706
+ '500': None,
707
+ }
708
+ response_data = await self.api_client.call_api(
709
+ *_param,
710
+ _request_timeout=_request_timeout
711
+ )
712
+ await response_data.read()
713
+ return self.api_client.response_deserialize(
714
+ response_data=response_data,
715
+ response_types_map=_response_types_map,
716
+ )
717
+
718
+
719
+ @validate_call
720
+ async def get_all_consents_for_a_user_without_preload_content(
721
+ self,
722
+ consent_type: Annotated[Optional[StrictStr], Field(description="Filter by consent type")] = None,
723
+ _request_timeout: Union[
724
+ None,
725
+ Annotated[StrictFloat, Field(gt=0)],
726
+ Tuple[
727
+ Annotated[StrictFloat, Field(gt=0)],
728
+ Annotated[StrictFloat, Field(gt=0)]
729
+ ]
730
+ ] = None,
731
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
732
+ _content_type: Optional[StrictStr] = None,
733
+ _headers: Optional[Dict[StrictStr, Any]] = None,
734
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
735
+ ) -> RESTResponseType:
736
+ """Get Consents for a User
737
+
738
+ Fetch all the recorded consents given from a User
739
+
740
+ :param consent_type: Filter by consent type
741
+ :type consent_type: str
742
+ :param _request_timeout: timeout setting for this request. If one
743
+ number provided, it will be total request
744
+ timeout. It can also be a pair (tuple) of
745
+ (connection, read) timeouts.
746
+ :type _request_timeout: int, tuple(int, int), optional
747
+ :param _request_auth: set to override the auth_settings for an a single
748
+ request; this effectively ignores the
749
+ authentication in the spec for a single request.
750
+ :type _request_auth: dict, optional
751
+ :param _content_type: force content-type for the request.
752
+ :type _content_type: str, Optional
753
+ :param _headers: set to override the headers for a single
754
+ request; this effectively ignores the headers
755
+ in the spec for a single request.
756
+ :type _headers: dict, optional
757
+ :param _host_index: set to override the host_index for a single
758
+ request; this effectively ignores the host_index
759
+ in the spec for a single request.
760
+ :type _host_index: int, optional
761
+ :return: Returns the result object.
762
+ """ # noqa: E501
763
+
764
+ _param = self._get_all_consents_for_a_user_serialize(
765
+ consent_type=consent_type,
766
+ _request_auth=_request_auth,
767
+ _content_type=_content_type,
768
+ _headers=_headers,
769
+ _host_index=_host_index
770
+ )
771
+
772
+ _response_types_map: Dict[str, Optional[str]] = {
773
+ '200': "UserConsentsResponse",
774
+ '400': "ErrorResponseModel",
775
+ '404': "ErrorResponseModel",
776
+ '500': None,
777
+ }
778
+ response_data = await self.api_client.call_api(
779
+ *_param,
780
+ _request_timeout=_request_timeout
781
+ )
782
+ return response_data.response
783
+
784
+
785
+ def _get_all_consents_for_a_user_serialize(
786
+ self,
787
+ consent_type,
788
+ _request_auth,
789
+ _content_type,
790
+ _headers,
791
+ _host_index,
792
+ ) -> RequestSerialized:
793
+
794
+ _host = None
795
+
796
+ _collection_formats: Dict[str, str] = {
797
+ }
798
+
799
+ _path_params: Dict[str, str] = {}
800
+ _query_params: List[Tuple[str, str]] = []
801
+ _header_params: Dict[str, Optional[str]] = _headers or {}
802
+ _form_params: List[Tuple[str, str]] = []
803
+ _files: Dict[
804
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
805
+ ] = {}
806
+ _body_params: Optional[bytes] = None
807
+
808
+ # process the path parameters
809
+ # process the query parameters
810
+ if consent_type is not None:
811
+
812
+ _query_params.append(('consent_type', consent_type))
813
+
814
+ # process the header parameters
815
+ # process the form parameters
816
+ # process the body parameter
817
+
818
+
819
+ # set the HTTP header `Accept`
820
+ if 'Accept' not in _header_params:
821
+ _header_params['Accept'] = self.api_client.select_header_accept(
822
+ [
823
+ 'application/json'
824
+ ]
825
+ )
826
+
827
+
828
+ # authentication setting
829
+ _auth_settings: List[str] = [
830
+ 'apiKey'
831
+ ]
832
+
833
+ return self.api_client.param_serialize(
834
+ method='GET',
835
+ resource_path='/auth/user-consent',
836
+ path_params=_path_params,
837
+ query_params=_query_params,
838
+ header_params=_header_params,
839
+ body=_body_params,
840
+ post_params=_form_params,
841
+ files=_files,
842
+ auth_settings=_auth_settings,
843
+ collection_formats=_collection_formats,
844
+ _host=_host,
845
+ _request_auth=_request_auth
846
+ )
847
+
848
+
849
+
850
+
851
+ @validate_call
852
+ async def get_consent_template_by_type(
853
+ self,
854
+ consent_type: StrictStr,
855
+ _request_timeout: Union[
856
+ None,
857
+ Annotated[StrictFloat, Field(gt=0)],
858
+ Tuple[
859
+ Annotated[StrictFloat, Field(gt=0)],
860
+ Annotated[StrictFloat, Field(gt=0)]
861
+ ]
862
+ ] = None,
863
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
864
+ _content_type: Optional[StrictStr] = None,
865
+ _headers: Optional[Dict[StrictStr, Any]] = None,
866
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
867
+ ) -> ConsentTemplate:
868
+ """Get consent template for a specific type
869
+
870
+ Returns the current consent template for a specific consent type
871
+
872
+ :param consent_type: (required)
873
+ :type consent_type: str
874
+ :param _request_timeout: timeout setting for this request. If one
875
+ number provided, it will be total request
876
+ timeout. It can also be a pair (tuple) of
877
+ (connection, read) timeouts.
878
+ :type _request_timeout: int, tuple(int, int), optional
879
+ :param _request_auth: set to override the auth_settings for an a single
880
+ request; this effectively ignores the
881
+ authentication in the spec for a single request.
882
+ :type _request_auth: dict, optional
883
+ :param _content_type: force content-type for the request.
884
+ :type _content_type: str, Optional
885
+ :param _headers: set to override the headers for a single
886
+ request; this effectively ignores the headers
887
+ in the spec for a single request.
888
+ :type _headers: dict, optional
889
+ :param _host_index: set to override the host_index for a single
890
+ request; this effectively ignores the host_index
891
+ in the spec for a single request.
892
+ :type _host_index: int, optional
893
+ :return: Returns the result object.
894
+ """ # noqa: E501
895
+
896
+ _param = self._get_consent_template_by_type_serialize(
897
+ consent_type=consent_type,
898
+ _request_auth=_request_auth,
899
+ _content_type=_content_type,
900
+ _headers=_headers,
901
+ _host_index=_host_index
902
+ )
903
+
904
+ _response_types_map: Dict[str, Optional[str]] = {
905
+ '200': "ConsentTemplate",
906
+ '400': "ErrorResponseModel",
907
+ '401': "ErrorResponseModel",
908
+ '404': "ErrorResponseModel",
909
+ }
910
+ response_data = await self.api_client.call_api(
911
+ *_param,
912
+ _request_timeout=_request_timeout
913
+ )
914
+ await response_data.read()
915
+ return self.api_client.response_deserialize(
916
+ response_data=response_data,
917
+ response_types_map=_response_types_map,
918
+ ).data
919
+
920
+
921
+ @validate_call
922
+ async def get_consent_template_by_type_with_http_info(
923
+ self,
924
+ consent_type: StrictStr,
925
+ _request_timeout: Union[
926
+ None,
927
+ Annotated[StrictFloat, Field(gt=0)],
928
+ Tuple[
929
+ Annotated[StrictFloat, Field(gt=0)],
930
+ Annotated[StrictFloat, Field(gt=0)]
931
+ ]
932
+ ] = None,
933
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
934
+ _content_type: Optional[StrictStr] = None,
935
+ _headers: Optional[Dict[StrictStr, Any]] = None,
936
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
937
+ ) -> ApiResponse[ConsentTemplate]:
938
+ """Get consent template for a specific type
939
+
940
+ Returns the current consent template for a specific consent type
941
+
942
+ :param consent_type: (required)
943
+ :type consent_type: str
944
+ :param _request_timeout: timeout setting for this request. If one
945
+ number provided, it will be total request
946
+ timeout. It can also be a pair (tuple) of
947
+ (connection, read) timeouts.
948
+ :type _request_timeout: int, tuple(int, int), optional
949
+ :param _request_auth: set to override the auth_settings for an a single
950
+ request; this effectively ignores the
951
+ authentication in the spec for a single request.
952
+ :type _request_auth: dict, optional
953
+ :param _content_type: force content-type for the request.
954
+ :type _content_type: str, Optional
955
+ :param _headers: set to override the headers for a single
956
+ request; this effectively ignores the headers
957
+ in the spec for a single request.
958
+ :type _headers: dict, optional
959
+ :param _host_index: set to override the host_index for a single
960
+ request; this effectively ignores the host_index
961
+ in the spec for a single request.
962
+ :type _host_index: int, optional
963
+ :return: Returns the result object.
964
+ """ # noqa: E501
965
+
966
+ _param = self._get_consent_template_by_type_serialize(
967
+ consent_type=consent_type,
968
+ _request_auth=_request_auth,
969
+ _content_type=_content_type,
970
+ _headers=_headers,
971
+ _host_index=_host_index
972
+ )
973
+
974
+ _response_types_map: Dict[str, Optional[str]] = {
975
+ '200': "ConsentTemplate",
976
+ '400': "ErrorResponseModel",
977
+ '401': "ErrorResponseModel",
978
+ '404': "ErrorResponseModel",
979
+ }
980
+ response_data = await self.api_client.call_api(
981
+ *_param,
982
+ _request_timeout=_request_timeout
983
+ )
984
+ await response_data.read()
985
+ return self.api_client.response_deserialize(
986
+ response_data=response_data,
987
+ response_types_map=_response_types_map,
988
+ )
989
+
990
+
991
+ @validate_call
992
+ async def get_consent_template_by_type_without_preload_content(
993
+ self,
994
+ consent_type: StrictStr,
995
+ _request_timeout: Union[
996
+ None,
997
+ Annotated[StrictFloat, Field(gt=0)],
998
+ Tuple[
999
+ Annotated[StrictFloat, Field(gt=0)],
1000
+ Annotated[StrictFloat, Field(gt=0)]
1001
+ ]
1002
+ ] = None,
1003
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1004
+ _content_type: Optional[StrictStr] = None,
1005
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1006
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1007
+ ) -> RESTResponseType:
1008
+ """Get consent template for a specific type
1009
+
1010
+ Returns the current consent template for a specific consent type
1011
+
1012
+ :param consent_type: (required)
1013
+ :type consent_type: str
1014
+ :param _request_timeout: timeout setting for this request. If one
1015
+ number provided, it will be total request
1016
+ timeout. It can also be a pair (tuple) of
1017
+ (connection, read) timeouts.
1018
+ :type _request_timeout: int, tuple(int, int), optional
1019
+ :param _request_auth: set to override the auth_settings for an a single
1020
+ request; this effectively ignores the
1021
+ authentication in the spec for a single request.
1022
+ :type _request_auth: dict, optional
1023
+ :param _content_type: force content-type for the request.
1024
+ :type _content_type: str, Optional
1025
+ :param _headers: set to override the headers for a single
1026
+ request; this effectively ignores the headers
1027
+ in the spec for a single request.
1028
+ :type _headers: dict, optional
1029
+ :param _host_index: set to override the host_index for a single
1030
+ request; this effectively ignores the host_index
1031
+ in the spec for a single request.
1032
+ :type _host_index: int, optional
1033
+ :return: Returns the result object.
1034
+ """ # noqa: E501
1035
+
1036
+ _param = self._get_consent_template_by_type_serialize(
1037
+ consent_type=consent_type,
1038
+ _request_auth=_request_auth,
1039
+ _content_type=_content_type,
1040
+ _headers=_headers,
1041
+ _host_index=_host_index
1042
+ )
1043
+
1044
+ _response_types_map: Dict[str, Optional[str]] = {
1045
+ '200': "ConsentTemplate",
1046
+ '400': "ErrorResponseModel",
1047
+ '401': "ErrorResponseModel",
1048
+ '404': "ErrorResponseModel",
1049
+ }
1050
+ response_data = await self.api_client.call_api(
1051
+ *_param,
1052
+ _request_timeout=_request_timeout
1053
+ )
1054
+ return response_data.response
1055
+
1056
+
1057
+ def _get_consent_template_by_type_serialize(
1058
+ self,
1059
+ consent_type,
1060
+ _request_auth,
1061
+ _content_type,
1062
+ _headers,
1063
+ _host_index,
1064
+ ) -> RequestSerialized:
1065
+
1066
+ _host = None
1067
+
1068
+ _collection_formats: Dict[str, str] = {
1069
+ }
1070
+
1071
+ _path_params: Dict[str, str] = {}
1072
+ _query_params: List[Tuple[str, str]] = []
1073
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1074
+ _form_params: List[Tuple[str, str]] = []
1075
+ _files: Dict[
1076
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1077
+ ] = {}
1078
+ _body_params: Optional[bytes] = None
1079
+
1080
+ # process the path parameters
1081
+ if consent_type is not None:
1082
+ _path_params['consent_type'] = consent_type
1083
+ # process the query parameters
1084
+ # process the header parameters
1085
+ # process the form parameters
1086
+ # process the body parameter
1087
+
1088
+
1089
+ # set the HTTP header `Accept`
1090
+ if 'Accept' not in _header_params:
1091
+ _header_params['Accept'] = self.api_client.select_header_accept(
1092
+ [
1093
+ 'application/json'
1094
+ ]
1095
+ )
1096
+
1097
+
1098
+ # authentication setting
1099
+ _auth_settings: List[str] = [
1100
+ 'apiKey'
1101
+ ]
1102
+
1103
+ return self.api_client.param_serialize(
1104
+ method='GET',
1105
+ resource_path='/auth/user-consent/templates/{consent_type}',
1106
+ path_params=_path_params,
1107
+ query_params=_query_params,
1108
+ header_params=_header_params,
1109
+ body=_body_params,
1110
+ post_params=_form_params,
1111
+ files=_files,
1112
+ auth_settings=_auth_settings,
1113
+ collection_formats=_collection_formats,
1114
+ _host=_host,
1115
+ _request_auth=_request_auth
1116
+ )
1117
+
1118
+
1119
+
1120
+
1121
+ @validate_call
1122
+ async def update_a_consent_action_by_type(
1123
+ self,
1124
+ consent_type: StrictStr,
1125
+ payload: UpdateConsentRequest,
1126
+ _request_timeout: Union[
1127
+ None,
1128
+ Annotated[StrictFloat, Field(gt=0)],
1129
+ Tuple[
1130
+ Annotated[StrictFloat, Field(gt=0)],
1131
+ Annotated[StrictFloat, Field(gt=0)]
1132
+ ]
1133
+ ] = None,
1134
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1135
+ _content_type: Optional[StrictStr] = None,
1136
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1137
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1138
+ ) -> ConsentActionResponse:
1139
+ """Grant or revoke an existing consent
1140
+
1141
+ Revoke or grant a consent to the User
1142
+
1143
+ :param consent_type: (required)
1144
+ :type consent_type: str
1145
+ :param payload: (required)
1146
+ :type payload: UpdateConsentRequest
1147
+ :param _request_timeout: timeout setting for this request. If one
1148
+ number provided, it will be total request
1149
+ timeout. It can also be a pair (tuple) of
1150
+ (connection, read) timeouts.
1151
+ :type _request_timeout: int, tuple(int, int), optional
1152
+ :param _request_auth: set to override the auth_settings for an a single
1153
+ request; this effectively ignores the
1154
+ authentication in the spec for a single request.
1155
+ :type _request_auth: dict, optional
1156
+ :param _content_type: force content-type for the request.
1157
+ :type _content_type: str, Optional
1158
+ :param _headers: set to override the headers for a single
1159
+ request; this effectively ignores the headers
1160
+ in the spec for a single request.
1161
+ :type _headers: dict, optional
1162
+ :param _host_index: set to override the host_index for a single
1163
+ request; this effectively ignores the host_index
1164
+ in the spec for a single request.
1165
+ :type _host_index: int, optional
1166
+ :return: Returns the result object.
1167
+ """ # noqa: E501
1168
+
1169
+ _param = self._update_a_consent_action_by_type_serialize(
1170
+ consent_type=consent_type,
1171
+ payload=payload,
1172
+ _request_auth=_request_auth,
1173
+ _content_type=_content_type,
1174
+ _headers=_headers,
1175
+ _host_index=_host_index
1176
+ )
1177
+
1178
+ _response_types_map: Dict[str, Optional[str]] = {
1179
+ '200': "ConsentActionResponse",
1180
+ '400': "ErrorResponseModel",
1181
+ '404': "ErrorResponseModel",
1182
+ '500': None,
1183
+ }
1184
+ response_data = await self.api_client.call_api(
1185
+ *_param,
1186
+ _request_timeout=_request_timeout
1187
+ )
1188
+ await response_data.read()
1189
+ return self.api_client.response_deserialize(
1190
+ response_data=response_data,
1191
+ response_types_map=_response_types_map,
1192
+ ).data
1193
+
1194
+
1195
+ @validate_call
1196
+ async def update_a_consent_action_by_type_with_http_info(
1197
+ self,
1198
+ consent_type: StrictStr,
1199
+ payload: UpdateConsentRequest,
1200
+ _request_timeout: Union[
1201
+ None,
1202
+ Annotated[StrictFloat, Field(gt=0)],
1203
+ Tuple[
1204
+ Annotated[StrictFloat, Field(gt=0)],
1205
+ Annotated[StrictFloat, Field(gt=0)]
1206
+ ]
1207
+ ] = None,
1208
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1209
+ _content_type: Optional[StrictStr] = None,
1210
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1211
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1212
+ ) -> ApiResponse[ConsentActionResponse]:
1213
+ """Grant or revoke an existing consent
1214
+
1215
+ Revoke or grant a consent to the User
1216
+
1217
+ :param consent_type: (required)
1218
+ :type consent_type: str
1219
+ :param payload: (required)
1220
+ :type payload: UpdateConsentRequest
1221
+ :param _request_timeout: timeout setting for this request. If one
1222
+ number provided, it will be total request
1223
+ timeout. It can also be a pair (tuple) of
1224
+ (connection, read) timeouts.
1225
+ :type _request_timeout: int, tuple(int, int), optional
1226
+ :param _request_auth: set to override the auth_settings for an a single
1227
+ request; this effectively ignores the
1228
+ authentication in the spec for a single request.
1229
+ :type _request_auth: dict, optional
1230
+ :param _content_type: force content-type for the request.
1231
+ :type _content_type: str, Optional
1232
+ :param _headers: set to override the headers for a single
1233
+ request; this effectively ignores the headers
1234
+ in the spec for a single request.
1235
+ :type _headers: dict, optional
1236
+ :param _host_index: set to override the host_index for a single
1237
+ request; this effectively ignores the host_index
1238
+ in the spec for a single request.
1239
+ :type _host_index: int, optional
1240
+ :return: Returns the result object.
1241
+ """ # noqa: E501
1242
+
1243
+ _param = self._update_a_consent_action_by_type_serialize(
1244
+ consent_type=consent_type,
1245
+ payload=payload,
1246
+ _request_auth=_request_auth,
1247
+ _content_type=_content_type,
1248
+ _headers=_headers,
1249
+ _host_index=_host_index
1250
+ )
1251
+
1252
+ _response_types_map: Dict[str, Optional[str]] = {
1253
+ '200': "ConsentActionResponse",
1254
+ '400': "ErrorResponseModel",
1255
+ '404': "ErrorResponseModel",
1256
+ '500': None,
1257
+ }
1258
+ response_data = await self.api_client.call_api(
1259
+ *_param,
1260
+ _request_timeout=_request_timeout
1261
+ )
1262
+ await response_data.read()
1263
+ return self.api_client.response_deserialize(
1264
+ response_data=response_data,
1265
+ response_types_map=_response_types_map,
1266
+ )
1267
+
1268
+
1269
+ @validate_call
1270
+ async def update_a_consent_action_by_type_without_preload_content(
1271
+ self,
1272
+ consent_type: StrictStr,
1273
+ payload: UpdateConsentRequest,
1274
+ _request_timeout: Union[
1275
+ None,
1276
+ Annotated[StrictFloat, Field(gt=0)],
1277
+ Tuple[
1278
+ Annotated[StrictFloat, Field(gt=0)],
1279
+ Annotated[StrictFloat, Field(gt=0)]
1280
+ ]
1281
+ ] = None,
1282
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1283
+ _content_type: Optional[StrictStr] = None,
1284
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1285
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1286
+ ) -> RESTResponseType:
1287
+ """Grant or revoke an existing consent
1288
+
1289
+ Revoke or grant a consent to the User
1290
+
1291
+ :param consent_type: (required)
1292
+ :type consent_type: str
1293
+ :param payload: (required)
1294
+ :type payload: UpdateConsentRequest
1295
+ :param _request_timeout: timeout setting for this request. If one
1296
+ number provided, it will be total request
1297
+ timeout. It can also be a pair (tuple) of
1298
+ (connection, read) timeouts.
1299
+ :type _request_timeout: int, tuple(int, int), optional
1300
+ :param _request_auth: set to override the auth_settings for an a single
1301
+ request; this effectively ignores the
1302
+ authentication in the spec for a single request.
1303
+ :type _request_auth: dict, optional
1304
+ :param _content_type: force content-type for the request.
1305
+ :type _content_type: str, Optional
1306
+ :param _headers: set to override the headers for a single
1307
+ request; this effectively ignores the headers
1308
+ in the spec for a single request.
1309
+ :type _headers: dict, optional
1310
+ :param _host_index: set to override the host_index for a single
1311
+ request; this effectively ignores the host_index
1312
+ in the spec for a single request.
1313
+ :type _host_index: int, optional
1314
+ :return: Returns the result object.
1315
+ """ # noqa: E501
1316
+
1317
+ _param = self._update_a_consent_action_by_type_serialize(
1318
+ consent_type=consent_type,
1319
+ payload=payload,
1320
+ _request_auth=_request_auth,
1321
+ _content_type=_content_type,
1322
+ _headers=_headers,
1323
+ _host_index=_host_index
1324
+ )
1325
+
1326
+ _response_types_map: Dict[str, Optional[str]] = {
1327
+ '200': "ConsentActionResponse",
1328
+ '400': "ErrorResponseModel",
1329
+ '404': "ErrorResponseModel",
1330
+ '500': None,
1331
+ }
1332
+ response_data = await self.api_client.call_api(
1333
+ *_param,
1334
+ _request_timeout=_request_timeout
1335
+ )
1336
+ return response_data.response
1337
+
1338
+
1339
+ def _update_a_consent_action_by_type_serialize(
1340
+ self,
1341
+ consent_type,
1342
+ payload,
1343
+ _request_auth,
1344
+ _content_type,
1345
+ _headers,
1346
+ _host_index,
1347
+ ) -> RequestSerialized:
1348
+
1349
+ _host = None
1350
+
1351
+ _collection_formats: Dict[str, str] = {
1352
+ }
1353
+
1354
+ _path_params: Dict[str, str] = {}
1355
+ _query_params: List[Tuple[str, str]] = []
1356
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1357
+ _form_params: List[Tuple[str, str]] = []
1358
+ _files: Dict[
1359
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1360
+ ] = {}
1361
+ _body_params: Optional[bytes] = None
1362
+
1363
+ # process the path parameters
1364
+ if consent_type is not None:
1365
+ _path_params['consent_type'] = consent_type
1366
+ # process the query parameters
1367
+ # process the header parameters
1368
+ # process the form parameters
1369
+ # process the body parameter
1370
+ if payload is not None:
1371
+ _body_params = payload
1372
+
1373
+
1374
+ # set the HTTP header `Accept`
1375
+ if 'Accept' not in _header_params:
1376
+ _header_params['Accept'] = self.api_client.select_header_accept(
1377
+ [
1378
+ 'application/json'
1379
+ ]
1380
+ )
1381
+
1382
+ # set the HTTP header `Content-Type`
1383
+ if _content_type:
1384
+ _header_params['Content-Type'] = _content_type
1385
+ else:
1386
+ _default_content_type = (
1387
+ self.api_client.select_header_content_type(
1388
+ [
1389
+ 'application/json'
1390
+ ]
1391
+ )
1392
+ )
1393
+ if _default_content_type is not None:
1394
+ _header_params['Content-Type'] = _default_content_type
1395
+
1396
+ # authentication setting
1397
+ _auth_settings: List[str] = [
1398
+ 'apiKey'
1399
+ ]
1400
+
1401
+ return self.api_client.param_serialize(
1402
+ method='PATCH',
1403
+ resource_path='/auth/user-consent/{consent_type}',
1404
+ path_params=_path_params,
1405
+ query_params=_query_params,
1406
+ header_params=_header_params,
1407
+ body=_body_params,
1408
+ post_params=_form_params,
1409
+ files=_files,
1410
+ auth_settings=_auth_settings,
1411
+ collection_formats=_collection_formats,
1412
+ _host=_host,
1413
+ _request_auth=_request_auth
1414
+ )
1415
+
1416
+