waldur-api-client 7.7.5__py3-none-any.whl → 7.7.7__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.

Potentially problematic release.


This version of waldur-api-client might be problematic. Click here for more details.

Files changed (229) hide show
  1. waldur_api_client/api/booking_resources/booking_resources_count.py +34 -11
  2. waldur_api_client/api/booking_resources/booking_resources_list.py +34 -11
  3. waldur_api_client/api/customers/customers_project_metadata_compliance_details_list.py +189 -0
  4. waldur_api_client/api/customers/customers_project_metadata_compliance_overview_list.py +189 -0
  5. waldur_api_client/api/customers/customers_project_metadata_compliance_projects_list.py +187 -0
  6. waldur_api_client/api/customers/customers_project_metadata_question_answers_list.py +187 -0
  7. waldur_api_client/api/marketplace_integration_statuses/marketplace_integration_statuses_count.py +34 -11
  8. waldur_api_client/api/marketplace_integration_statuses/marketplace_integration_statuses_list.py +34 -11
  9. waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_count.py +34 -11
  10. waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_list.py +34 -11
  11. waldur_api_client/api/marketplace_offering_terms_of_service/__init__.py +1 -0
  12. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_count.py +274 -0
  13. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_create.py +152 -0
  14. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_destroy.py +89 -0
  15. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_list.py +277 -0
  16. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_partial_update.py +164 -0
  17. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_retrieve.py +142 -0
  18. waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_update.py +164 -0
  19. waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_roles_count.py +34 -11
  20. waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_roles_list.py +34 -11
  21. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_retrieve.py +154 -0
  22. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_review_retrieve.py +154 -0
  23. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_completion_review_status_retrieve.py +154 -0
  24. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_completion_status_retrieve.py +154 -0
  25. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_count.py +34 -11
  26. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py +34 -11
  27. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_submit_answers.py +179 -0
  28. waldur_api_client/api/marketplace_orders/marketplace_orders_count.py +19 -0
  29. waldur_api_client/api/marketplace_orders/marketplace_orders_list.py +19 -0
  30. waldur_api_client/api/marketplace_plans/marketplace_plans_count.py +19 -0
  31. waldur_api_client/api/marketplace_plans/marketplace_plans_list.py +19 -0
  32. waldur_api_client/api/marketplace_plans/marketplace_plans_usage_stats_count.py +19 -0
  33. waldur_api_client/api/marketplace_plans/marketplace_plans_usage_stats_list.py +19 -0
  34. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +34 -11
  35. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +34 -11
  36. waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +34 -11
  37. waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +34 -11
  38. waldur_api_client/api/marketplace_robot_accounts/marketplace_robot_accounts_list.py +23 -0
  39. waldur_api_client/api/marketplace_robot_accounts/marketplace_robot_accounts_retrieve.py +30 -1
  40. waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_count.py +34 -11
  41. waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_list.py +34 -11
  42. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_project_service_accounts_list.py +276 -0
  43. waldur_api_client/api/marketplace_service_providers/service_provider_compliance_overview.py +189 -0
  44. waldur_api_client/api/marketplace_service_providers/service_provider_offering_users_compliance.py +222 -0
  45. waldur_api_client/api/marketplace_user_offering_consents/__init__.py +1 -0
  46. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_count.py +307 -0
  47. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_create.py +152 -0
  48. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_destroy.py +89 -0
  49. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_list.py +310 -0
  50. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_partial_update.py +164 -0
  51. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_retrieve.py +142 -0
  52. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_revoke.py +146 -0
  53. waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_update.py +164 -0
  54. waldur_api_client/api/public_maintenance_announcements/__init__.py +1 -0
  55. waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_count.py +325 -0
  56. waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_list.py +328 -0
  57. waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_retrieve.py +144 -0
  58. waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_order_status_retrieve.py +145 -0
  59. waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_status_retrieve.py +147 -0
  60. waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_team_status_list.py +188 -0
  61. waldur_api_client/models/__init__.py +118 -4
  62. waldur_api_client/models/admin_announcement.py +109 -1
  63. waldur_api_client/models/admin_announcement_maintenance_affected_offerings_item.py +103 -0
  64. waldur_api_client/models/admin_announcements_list_field_item.py +8 -0
  65. waldur_api_client/models/admin_announcements_retrieve_field_item.py +8 -0
  66. waldur_api_client/models/azure_sql_server_create_order_attributes.py +83 -0
  67. waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +99 -0
  68. waldur_api_client/models/basic_user.py +30 -21
  69. waldur_api_client/models/booking_offerings_list_field_item.py +1 -2
  70. waldur_api_client/models/booking_offerings_retrieve_field_item.py +1 -2
  71. waldur_api_client/models/booking_resource.py +10 -9
  72. waldur_api_client/models/booking_resources_list_field_item.py +1 -1
  73. waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -1
  74. waldur_api_client/models/checklist_info.py +76 -0
  75. waldur_api_client/models/compliance_overview.py +91 -0
  76. waldur_api_client/models/create_router.py +1 -1
  77. waldur_api_client/models/create_router_request.py +1 -1
  78. waldur_api_client/models/customer.py +51 -0
  79. waldur_api_client/models/customers_list_field_item.py +2 -0
  80. waldur_api_client/models/customers_retrieve_field_item.py +2 -0
  81. waldur_api_client/models/fingerprint.py +19 -17
  82. waldur_api_client/models/generic_order_attributes.py +69 -0
  83. waldur_api_client/models/google_auth_authorize_retrieve_field_item.py +1 -0
  84. waldur_api_client/models/google_auth_list_field_item.py +1 -0
  85. waldur_api_client/models/google_auth_retrieve_field_item.py +1 -0
  86. waldur_api_client/models/google_credentials.py +9 -0
  87. waldur_api_client/models/group_invitation.py +24 -0
  88. waldur_api_client/models/group_invitation_request.py +10 -0
  89. waldur_api_client/models/instance_flavor_change_request.py +1 -1
  90. waldur_api_client/models/maintenance_announcement.py +8 -0
  91. waldur_api_client/models/marketplace_managed_rancher_create_order_attributes.py +144 -0
  92. waldur_api_client/models/marketplace_offering_terms_of_service_count_o_item.py +13 -0
  93. waldur_api_client/models/marketplace_offering_terms_of_service_list_o_item.py +13 -0
  94. waldur_api_client/models/marketplace_orders_list_field_item.py +1 -1
  95. waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -1
  96. waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +1 -2
  97. waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +1 -2
  98. waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +1 -2
  99. waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +1 -2
  100. waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +1 -2
  101. waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +1 -2
  102. waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -1
  103. waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -1
  104. waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -1
  105. waldur_api_client/models/marketplace_public_offerings_list_field_item.py +1 -2
  106. waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +1 -2
  107. waldur_api_client/models/marketplace_rancher_create_order_attributes.py +145 -0
  108. waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -1
  109. waldur_api_client/models/marketplace_resources_list_field_item.py +1 -1
  110. waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -1
  111. waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +32 -0
  112. waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +32 -0
  113. waldur_api_client/models/marketplace_service_providers_list_field_item.py +1 -0
  114. waldur_api_client/models/marketplace_service_providers_retrieve_field_item.py +1 -0
  115. waldur_api_client/models/marketplace_user_offering_consents_count_o_item.py +15 -0
  116. waldur_api_client/models/marketplace_user_offering_consents_list_o_item.py +15 -0
  117. waldur_api_client/models/offering.py +9 -18
  118. waldur_api_client/models/offering_create.py +8 -18
  119. waldur_api_client/models/offering_create_request.py +0 -18
  120. waldur_api_client/models/offering_overview_update_request.py +0 -18
  121. waldur_api_client/models/offering_terms_of_service.py +142 -0
  122. waldur_api_client/models/offering_terms_of_service_create.py +107 -0
  123. waldur_api_client/models/offering_terms_of_service_create_request.py +107 -0
  124. waldur_api_client/models/offering_terms_of_service_request.py +96 -0
  125. waldur_api_client/models/open_stack_backend_instance.py +2 -2
  126. waldur_api_client/models/open_stack_backend_volumes.py +3 -3
  127. waldur_api_client/models/open_stack_backup.py +1 -1
  128. waldur_api_client/models/open_stack_backup_restoration.py +8 -5
  129. waldur_api_client/models/open_stack_backup_restoration_request.py +28 -3
  130. waldur_api_client/models/open_stack_fixed_ip.py +2 -2
  131. waldur_api_client/models/open_stack_fixed_ip_request.py +2 -2
  132. waldur_api_client/models/open_stack_floating_ip.py +5 -4
  133. waldur_api_client/models/open_stack_instance.py +17 -15
  134. waldur_api_client/models/open_stack_instance_allowed_address_pairs_update_request.py +3 -2
  135. waldur_api_client/models/open_stack_instance_availability_zone.py +1 -1
  136. waldur_api_client/models/open_stack_instance_create_order_attributes.py +283 -0
  137. waldur_api_client/models/open_stack_instance_request.py +4 -3
  138. waldur_api_client/models/open_stack_instance_security_groups_update_request.py +1 -1
  139. waldur_api_client/models/open_stack_nested_floating_ip.py +3 -3
  140. waldur_api_client/models/open_stack_nested_instance.py +1 -1
  141. waldur_api_client/models/open_stack_nested_port.py +5 -5
  142. waldur_api_client/models/open_stack_nested_port_request.py +1 -1
  143. waldur_api_client/models/open_stack_nested_security_group.py +16 -16
  144. waldur_api_client/models/open_stack_nested_security_group_request.py +59 -0
  145. waldur_api_client/models/{nested_security_group_rule_request.py → open_stack_nested_security_group_rules_item.py} +73 -63
  146. waldur_api_client/models/open_stack_nested_sub_net.py +4 -4
  147. waldur_api_client/models/open_stack_nested_sub_net_request.py +4 -4
  148. waldur_api_client/models/open_stack_nested_volume.py +3 -3
  149. waldur_api_client/models/open_stack_nested_volume_request.py +3 -3
  150. waldur_api_client/models/open_stack_network.py +23 -3
  151. waldur_api_client/models/open_stack_port.py +10 -9
  152. waldur_api_client/models/open_stack_port_ip_update_request.py +2 -2
  153. waldur_api_client/models/open_stack_port_request.py +3 -3
  154. waldur_api_client/models/open_stack_router.py +2 -2
  155. waldur_api_client/models/open_stack_router_interface_request.py +4 -2
  156. waldur_api_client/models/open_stack_security_group_rule_create.py +6 -5
  157. waldur_api_client/models/open_stack_security_group_rule_create_request.py +6 -5
  158. waldur_api_client/models/open_stack_security_group_rule_update_request.py +10 -9
  159. waldur_api_client/models/open_stack_server_group.py +2 -1
  160. waldur_api_client/models/open_stack_server_group_request.py +2 -1
  161. waldur_api_client/models/open_stack_snapshot.py +2 -2
  162. waldur_api_client/models/open_stack_snapshot_restoration.py +1 -1
  163. waldur_api_client/models/open_stack_sub_net.py +5 -5
  164. waldur_api_client/models/open_stack_sub_net_request.py +2 -2
  165. waldur_api_client/models/open_stack_tenant.py +41 -3
  166. waldur_api_client/models/open_stack_tenant_create_order_attributes.py +130 -0
  167. waldur_api_client/models/open_stack_volume.py +9 -9
  168. waldur_api_client/models/open_stack_volume_create_order_attributes.py +155 -0
  169. waldur_api_client/models/open_stack_volume_request.py +1 -1
  170. waldur_api_client/models/openstack_networks_list_field_item.py +1 -0
  171. waldur_api_client/models/openstack_networks_retrieve_field_item.py +1 -0
  172. waldur_api_client/models/openstack_tenants_list_field_item.py +3 -0
  173. waldur_api_client/models/openstack_tenants_retrieve_field_item.py +3 -0
  174. waldur_api_client/models/order_create.py +0 -8
  175. waldur_api_client/models/order_create_request.py +181 -4
  176. waldur_api_client/models/order_details.py +0 -9
  177. waldur_api_client/models/patched_offering_terms_of_service_request.py +96 -0
  178. waldur_api_client/models/patched_open_stack_instance_request.py +4 -3
  179. waldur_api_client/models/patched_open_stack_server_group_request.py +2 -1
  180. waldur_api_client/models/patched_open_stack_sub_net_request.py +2 -2
  181. waldur_api_client/models/patched_open_stack_volume_request.py +1 -1
  182. waldur_api_client/models/patched_user_offering_consent_request.py +59 -0
  183. waldur_api_client/models/permission_project.py +147 -0
  184. waldur_api_client/models/permission_request.py +2 -2
  185. waldur_api_client/models/project_answer.py +122 -0
  186. waldur_api_client/models/project_detail.py +133 -0
  187. waldur_api_client/models/project_details_response.py +115 -0
  188. waldur_api_client/models/provider_offering_details.py +9 -18
  189. waldur_api_client/models/provider_offering_details_request.py +0 -18
  190. waldur_api_client/models/public_maintenance_announcement.py +217 -0
  191. waldur_api_client/models/public_maintenance_announcement_state_enum.py +10 -0
  192. waldur_api_client/models/public_maintenance_announcements_count_o_item.py +15 -0
  193. waldur_api_client/models/public_maintenance_announcements_count_state_item.py +12 -0
  194. waldur_api_client/models/public_maintenance_announcements_list_o_item.py +15 -0
  195. waldur_api_client/models/public_maintenance_announcements_list_state_item.py +12 -0
  196. waldur_api_client/models/public_offering_details.py +9 -18
  197. waldur_api_client/models/question_answer.py +176 -0
  198. waldur_api_client/models/question_answer_project_answers_item.py +44 -0
  199. waldur_api_client/models/question_answer_question_options_item.py +44 -0
  200. waldur_api_client/models/rancher_cluster_security_group_rule.py +5 -4
  201. waldur_api_client/models/rancher_cluster_security_group_rule_request.py +5 -4
  202. waldur_api_client/models/remote_project_update_request.py +2 -2
  203. waldur_api_client/models/remote_resource_order.py +88 -0
  204. waldur_api_client/models/remote_resource_order_remote_state_enum.py +15 -0
  205. waldur_api_client/models/remote_resource_sync_status.py +123 -0
  206. waldur_api_client/models/remote_resource_sync_status_remote_state_enum.py +13 -0
  207. waldur_api_client/models/remote_resource_team_member.py +85 -0
  208. waldur_api_client/models/resource.py +10 -9
  209. waldur_api_client/models/robot_account_details.py +226 -144
  210. waldur_api_client/models/service_provider.py +9 -0
  211. waldur_api_client/models/service_provider_compliance_overview.py +122 -0
  212. waldur_api_client/models/service_provider_offering_user_compliance.py +179 -0
  213. waldur_api_client/models/service_provider_offering_user_compliance_state_enum.py +17 -0
  214. waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +75 -0
  215. waldur_api_client/models/sync_status_enum.py +10 -0
  216. waldur_api_client/models/user_offering_consent.py +202 -0
  217. waldur_api_client/models/user_offering_consent_create.py +60 -0
  218. waldur_api_client/models/user_offering_consent_create_request.py +60 -0
  219. waldur_api_client/models/user_offering_consent_request.py +59 -0
  220. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +228 -0
  221. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_1.py +155 -0
  222. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_2_type_1.py +155 -0
  223. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_3_type_1.py +155 -0
  224. waldur_api_client/models/volume_attach_request.py +1 -1
  225. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/METADATA +1 -1
  226. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/RECORD +228 -138
  227. waldur_api_client/models/nested_security_group_rule.py +0 -222
  228. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/LICENSE +0 -0
  229. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/WHEEL +0 -0
@@ -1,6 +1,6 @@
1
1
  import datetime
2
2
  from collections.abc import Mapping
3
- from typing import Any, TypeVar, Union
3
+ from typing import TYPE_CHECKING, Any, TypeVar, Union
4
4
  from uuid import UUID
5
5
 
6
6
  from attrs import define as _attrs_define
@@ -10,6 +10,12 @@ from dateutil.parser import isoparse
10
10
  from ..models.admin_announcement_type_enum import AdminAnnouncementTypeEnum
11
11
  from ..types import UNSET, Unset
12
12
 
13
+ if TYPE_CHECKING:
14
+ from ..models.admin_announcement_maintenance_affected_offerings_item import (
15
+ AdminAnnouncementMaintenanceAffectedOfferingsItem,
16
+ )
17
+
18
+
13
19
  T = TypeVar("T", bound="AdminAnnouncement")
14
20
 
15
21
 
@@ -24,6 +30,14 @@ class AdminAnnouncement:
24
30
  is_active (Union[Unset, bool]):
25
31
  type_ (Union[Unset, AdminAnnouncementTypeEnum]):
26
32
  created (Union[Unset, datetime.datetime]):
33
+ maintenance_uuid (Union[Unset, str]):
34
+ maintenance_name (Union[Unset, str]):
35
+ maintenance_type (Union[Unset, str]):
36
+ maintenance_state (Union[Unset, str]):
37
+ maintenance_scheduled_start (Union[Unset, datetime.datetime]):
38
+ maintenance_scheduled_end (Union[Unset, datetime.datetime]):
39
+ maintenance_service_provider (Union[Unset, str]):
40
+ maintenance_affected_offerings (Union[Unset, list['AdminAnnouncementMaintenanceAffectedOfferingsItem']]):
27
41
  """
28
42
 
29
43
  uuid: Union[Unset, UUID] = UNSET
@@ -33,6 +47,14 @@ class AdminAnnouncement:
33
47
  is_active: Union[Unset, bool] = UNSET
34
48
  type_: Union[Unset, AdminAnnouncementTypeEnum] = UNSET
35
49
  created: Union[Unset, datetime.datetime] = UNSET
50
+ maintenance_uuid: Union[Unset, str] = UNSET
51
+ maintenance_name: Union[Unset, str] = UNSET
52
+ maintenance_type: Union[Unset, str] = UNSET
53
+ maintenance_state: Union[Unset, str] = UNSET
54
+ maintenance_scheduled_start: Union[Unset, datetime.datetime] = UNSET
55
+ maintenance_scheduled_end: Union[Unset, datetime.datetime] = UNSET
56
+ maintenance_service_provider: Union[Unset, str] = UNSET
57
+ maintenance_affected_offerings: Union[Unset, list["AdminAnnouncementMaintenanceAffectedOfferingsItem"]] = UNSET
36
58
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
37
59
 
38
60
  def to_dict(self) -> dict[str, Any]:
@@ -60,6 +82,31 @@ class AdminAnnouncement:
60
82
  if not isinstance(self.created, Unset):
61
83
  created = self.created.isoformat()
62
84
 
85
+ maintenance_uuid = self.maintenance_uuid
86
+
87
+ maintenance_name = self.maintenance_name
88
+
89
+ maintenance_type = self.maintenance_type
90
+
91
+ maintenance_state = self.maintenance_state
92
+
93
+ maintenance_scheduled_start: Union[Unset, str] = UNSET
94
+ if not isinstance(self.maintenance_scheduled_start, Unset):
95
+ maintenance_scheduled_start = self.maintenance_scheduled_start.isoformat()
96
+
97
+ maintenance_scheduled_end: Union[Unset, str] = UNSET
98
+ if not isinstance(self.maintenance_scheduled_end, Unset):
99
+ maintenance_scheduled_end = self.maintenance_scheduled_end.isoformat()
100
+
101
+ maintenance_service_provider = self.maintenance_service_provider
102
+
103
+ maintenance_affected_offerings: Union[Unset, list[dict[str, Any]]] = UNSET
104
+ if not isinstance(self.maintenance_affected_offerings, Unset):
105
+ maintenance_affected_offerings = []
106
+ for maintenance_affected_offerings_item_data in self.maintenance_affected_offerings:
107
+ maintenance_affected_offerings_item = maintenance_affected_offerings_item_data.to_dict()
108
+ maintenance_affected_offerings.append(maintenance_affected_offerings_item)
109
+
63
110
  field_dict: dict[str, Any] = {}
64
111
  field_dict.update(self.additional_properties)
65
112
  field_dict.update({})
@@ -77,11 +124,31 @@ class AdminAnnouncement:
77
124
  field_dict["type"] = type_
78
125
  if created is not UNSET:
79
126
  field_dict["created"] = created
127
+ if maintenance_uuid is not UNSET:
128
+ field_dict["maintenance_uuid"] = maintenance_uuid
129
+ if maintenance_name is not UNSET:
130
+ field_dict["maintenance_name"] = maintenance_name
131
+ if maintenance_type is not UNSET:
132
+ field_dict["maintenance_type"] = maintenance_type
133
+ if maintenance_state is not UNSET:
134
+ field_dict["maintenance_state"] = maintenance_state
135
+ if maintenance_scheduled_start is not UNSET:
136
+ field_dict["maintenance_scheduled_start"] = maintenance_scheduled_start
137
+ if maintenance_scheduled_end is not UNSET:
138
+ field_dict["maintenance_scheduled_end"] = maintenance_scheduled_end
139
+ if maintenance_service_provider is not UNSET:
140
+ field_dict["maintenance_service_provider"] = maintenance_service_provider
141
+ if maintenance_affected_offerings is not UNSET:
142
+ field_dict["maintenance_affected_offerings"] = maintenance_affected_offerings
80
143
 
81
144
  return field_dict
82
145
 
83
146
  @classmethod
84
147
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
148
+ from ..models.admin_announcement_maintenance_affected_offerings_item import (
149
+ AdminAnnouncementMaintenanceAffectedOfferingsItem,
150
+ )
151
+
85
152
  d = dict(src_dict)
86
153
  _uuid = d.pop("uuid", UNSET)
87
154
  uuid: Union[Unset, UUID]
@@ -122,6 +189,39 @@ class AdminAnnouncement:
122
189
  else:
123
190
  created = isoparse(_created)
124
191
 
192
+ maintenance_uuid = d.pop("maintenance_uuid", UNSET)
193
+
194
+ maintenance_name = d.pop("maintenance_name", UNSET)
195
+
196
+ maintenance_type = d.pop("maintenance_type", UNSET)
197
+
198
+ maintenance_state = d.pop("maintenance_state", UNSET)
199
+
200
+ _maintenance_scheduled_start = d.pop("maintenance_scheduled_start", UNSET)
201
+ maintenance_scheduled_start: Union[Unset, datetime.datetime]
202
+ if isinstance(_maintenance_scheduled_start, Unset):
203
+ maintenance_scheduled_start = UNSET
204
+ else:
205
+ maintenance_scheduled_start = isoparse(_maintenance_scheduled_start)
206
+
207
+ _maintenance_scheduled_end = d.pop("maintenance_scheduled_end", UNSET)
208
+ maintenance_scheduled_end: Union[Unset, datetime.datetime]
209
+ if isinstance(_maintenance_scheduled_end, Unset):
210
+ maintenance_scheduled_end = UNSET
211
+ else:
212
+ maintenance_scheduled_end = isoparse(_maintenance_scheduled_end)
213
+
214
+ maintenance_service_provider = d.pop("maintenance_service_provider", UNSET)
215
+
216
+ maintenance_affected_offerings = []
217
+ _maintenance_affected_offerings = d.pop("maintenance_affected_offerings", UNSET)
218
+ for maintenance_affected_offerings_item_data in _maintenance_affected_offerings or []:
219
+ maintenance_affected_offerings_item = AdminAnnouncementMaintenanceAffectedOfferingsItem.from_dict(
220
+ maintenance_affected_offerings_item_data
221
+ )
222
+
223
+ maintenance_affected_offerings.append(maintenance_affected_offerings_item)
224
+
125
225
  admin_announcement = cls(
126
226
  uuid=uuid,
127
227
  description=description,
@@ -130,6 +230,14 @@ class AdminAnnouncement:
130
230
  is_active=is_active,
131
231
  type_=type_,
132
232
  created=created,
233
+ maintenance_uuid=maintenance_uuid,
234
+ maintenance_name=maintenance_name,
235
+ maintenance_type=maintenance_type,
236
+ maintenance_state=maintenance_state,
237
+ maintenance_scheduled_start=maintenance_scheduled_start,
238
+ maintenance_scheduled_end=maintenance_scheduled_end,
239
+ maintenance_service_provider=maintenance_service_provider,
240
+ maintenance_affected_offerings=maintenance_affected_offerings,
133
241
  )
134
242
 
135
243
  admin_announcement.additional_properties = d
@@ -0,0 +1,103 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+ from uuid import UUID
4
+
5
+ from attrs import define as _attrs_define
6
+ from attrs import field as _attrs_field
7
+
8
+ from ..types import UNSET, Unset
9
+
10
+ T = TypeVar("T", bound="AdminAnnouncementMaintenanceAffectedOfferingsItem")
11
+
12
+
13
+ @_attrs_define
14
+ class AdminAnnouncementMaintenanceAffectedOfferingsItem:
15
+ """
16
+ Attributes:
17
+ uuid (Union[Unset, UUID]):
18
+ name (Union[Unset, str]):
19
+ impact_level (Union[Unset, str]):
20
+ impact_level_display (Union[Unset, str]):
21
+ impact_description (Union[Unset, str]):
22
+ """
23
+
24
+ uuid: Union[Unset, UUID] = UNSET
25
+ name: Union[Unset, str] = UNSET
26
+ impact_level: Union[Unset, str] = UNSET
27
+ impact_level_display: Union[Unset, str] = UNSET
28
+ impact_description: Union[Unset, str] = UNSET
29
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
30
+
31
+ def to_dict(self) -> dict[str, Any]:
32
+ uuid: Union[Unset, str] = UNSET
33
+ if not isinstance(self.uuid, Unset):
34
+ uuid = str(self.uuid)
35
+
36
+ name = self.name
37
+
38
+ impact_level = self.impact_level
39
+
40
+ impact_level_display = self.impact_level_display
41
+
42
+ impact_description = self.impact_description
43
+
44
+ field_dict: dict[str, Any] = {}
45
+ field_dict.update(self.additional_properties)
46
+ field_dict.update({})
47
+ if uuid is not UNSET:
48
+ field_dict["uuid"] = uuid
49
+ if name is not UNSET:
50
+ field_dict["name"] = name
51
+ if impact_level is not UNSET:
52
+ field_dict["impact_level"] = impact_level
53
+ if impact_level_display is not UNSET:
54
+ field_dict["impact_level_display"] = impact_level_display
55
+ if impact_description is not UNSET:
56
+ field_dict["impact_description"] = impact_description
57
+
58
+ return field_dict
59
+
60
+ @classmethod
61
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
62
+ d = dict(src_dict)
63
+ _uuid = d.pop("uuid", UNSET)
64
+ uuid: Union[Unset, UUID]
65
+ if isinstance(_uuid, Unset):
66
+ uuid = UNSET
67
+ else:
68
+ uuid = UUID(_uuid)
69
+
70
+ name = d.pop("name", UNSET)
71
+
72
+ impact_level = d.pop("impact_level", UNSET)
73
+
74
+ impact_level_display = d.pop("impact_level_display", UNSET)
75
+
76
+ impact_description = d.pop("impact_description", UNSET)
77
+
78
+ admin_announcement_maintenance_affected_offerings_item = cls(
79
+ uuid=uuid,
80
+ name=name,
81
+ impact_level=impact_level,
82
+ impact_level_display=impact_level_display,
83
+ impact_description=impact_description,
84
+ )
85
+
86
+ admin_announcement_maintenance_affected_offerings_item.additional_properties = d
87
+ return admin_announcement_maintenance_affected_offerings_item
88
+
89
+ @property
90
+ def additional_keys(self) -> list[str]:
91
+ return list(self.additional_properties.keys())
92
+
93
+ def __getitem__(self, key: str) -> Any:
94
+ return self.additional_properties[key]
95
+
96
+ def __setitem__(self, key: str, value: Any) -> None:
97
+ self.additional_properties[key] = value
98
+
99
+ def __delitem__(self, key: str) -> None:
100
+ del self.additional_properties[key]
101
+
102
+ def __contains__(self, key: str) -> bool:
103
+ return key in self.additional_properties
@@ -7,6 +7,14 @@ class AdminAnnouncementsListFieldItem(str, Enum):
7
7
  CREATED = "created"
8
8
  DESCRIPTION = "description"
9
9
  IS_ACTIVE = "is_active"
10
+ MAINTENANCE_AFFECTED_OFFERINGS = "maintenance_affected_offerings"
11
+ MAINTENANCE_NAME = "maintenance_name"
12
+ MAINTENANCE_SCHEDULED_END = "maintenance_scheduled_end"
13
+ MAINTENANCE_SCHEDULED_START = "maintenance_scheduled_start"
14
+ MAINTENANCE_SERVICE_PROVIDER = "maintenance_service_provider"
15
+ MAINTENANCE_STATE = "maintenance_state"
16
+ MAINTENANCE_TYPE = "maintenance_type"
17
+ MAINTENANCE_UUID = "maintenance_uuid"
10
18
  TYPE = "type"
11
19
  UUID = "uuid"
12
20
 
@@ -7,6 +7,14 @@ class AdminAnnouncementsRetrieveFieldItem(str, Enum):
7
7
  CREATED = "created"
8
8
  DESCRIPTION = "description"
9
9
  IS_ACTIVE = "is_active"
10
+ MAINTENANCE_AFFECTED_OFFERINGS = "maintenance_affected_offerings"
11
+ MAINTENANCE_NAME = "maintenance_name"
12
+ MAINTENANCE_SCHEDULED_END = "maintenance_scheduled_end"
13
+ MAINTENANCE_SCHEDULED_START = "maintenance_scheduled_start"
14
+ MAINTENANCE_SERVICE_PROVIDER = "maintenance_service_provider"
15
+ MAINTENANCE_STATE = "maintenance_state"
16
+ MAINTENANCE_TYPE = "maintenance_type"
17
+ MAINTENANCE_UUID = "maintenance_uuid"
10
18
  TYPE = "type"
11
19
  UUID = "uuid"
12
20
 
@@ -0,0 +1,83 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="AzureSQLServerCreateOrderAttributes")
10
+
11
+
12
+ @_attrs_define
13
+ class AzureSQLServerCreateOrderAttributes:
14
+ """This mixin allows to specify list of fields to be rendered by serializer.
15
+ It expects that request is available in serializer's context.
16
+
17
+ It is disabled for nested serializers (where parent is another serializer)
18
+ but remains active for list views (where parent is a ListSerializer).
19
+
20
+ Attributes:
21
+ name (str):
22
+ location (str):
23
+ description (Union[Unset, str]):
24
+ """
25
+
26
+ name: str
27
+ location: str
28
+ description: Union[Unset, str] = UNSET
29
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
30
+
31
+ def to_dict(self) -> dict[str, Any]:
32
+ name = self.name
33
+
34
+ location = self.location
35
+
36
+ description = self.description
37
+
38
+ field_dict: dict[str, Any] = {}
39
+ field_dict.update(self.additional_properties)
40
+ field_dict.update(
41
+ {
42
+ "name": name,
43
+ "location": location,
44
+ }
45
+ )
46
+ if description is not UNSET:
47
+ field_dict["description"] = description
48
+
49
+ return field_dict
50
+
51
+ @classmethod
52
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
53
+ d = dict(src_dict)
54
+ name = d.pop("name")
55
+
56
+ location = d.pop("location")
57
+
58
+ description = d.pop("description", UNSET)
59
+
60
+ azure_sql_server_create_order_attributes = cls(
61
+ name=name,
62
+ location=location,
63
+ description=description,
64
+ )
65
+
66
+ azure_sql_server_create_order_attributes.additional_properties = d
67
+ return azure_sql_server_create_order_attributes
68
+
69
+ @property
70
+ def additional_keys(self) -> list[str]:
71
+ return list(self.additional_properties.keys())
72
+
73
+ def __getitem__(self, key: str) -> Any:
74
+ return self.additional_properties[key]
75
+
76
+ def __setitem__(self, key: str, value: Any) -> None:
77
+ self.additional_properties[key] = value
78
+
79
+ def __delitem__(self, key: str) -> None:
80
+ del self.additional_properties[key]
81
+
82
+ def __contains__(self, key: str) -> bool:
83
+ return key in self.additional_properties
@@ -0,0 +1,99 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="AzureVirtualMachineCreateOrderAttributes")
10
+
11
+
12
+ @_attrs_define
13
+ class AzureVirtualMachineCreateOrderAttributes:
14
+ """This mixin allows to specify list of fields to be rendered by serializer.
15
+ It expects that request is available in serializer's context.
16
+
17
+ It is disabled for nested serializers (where parent is another serializer)
18
+ but remains active for list views (where parent is a ListSerializer).
19
+
20
+ Attributes:
21
+ name (str):
22
+ size (str):
23
+ image (str):
24
+ location (str):
25
+ description (Union[Unset, str]):
26
+ """
27
+
28
+ name: str
29
+ size: str
30
+ image: str
31
+ location: str
32
+ description: Union[Unset, str] = UNSET
33
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
34
+
35
+ def to_dict(self) -> dict[str, Any]:
36
+ name = self.name
37
+
38
+ size = self.size
39
+
40
+ image = self.image
41
+
42
+ location = self.location
43
+
44
+ description = self.description
45
+
46
+ field_dict: dict[str, Any] = {}
47
+ field_dict.update(self.additional_properties)
48
+ field_dict.update(
49
+ {
50
+ "name": name,
51
+ "size": size,
52
+ "image": image,
53
+ "location": location,
54
+ }
55
+ )
56
+ if description is not UNSET:
57
+ field_dict["description"] = description
58
+
59
+ return field_dict
60
+
61
+ @classmethod
62
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
63
+ d = dict(src_dict)
64
+ name = d.pop("name")
65
+
66
+ size = d.pop("size")
67
+
68
+ image = d.pop("image")
69
+
70
+ location = d.pop("location")
71
+
72
+ description = d.pop("description", UNSET)
73
+
74
+ azure_virtual_machine_create_order_attributes = cls(
75
+ name=name,
76
+ size=size,
77
+ image=image,
78
+ location=location,
79
+ description=description,
80
+ )
81
+
82
+ azure_virtual_machine_create_order_attributes.additional_properties = d
83
+ return azure_virtual_machine_create_order_attributes
84
+
85
+ @property
86
+ def additional_keys(self) -> list[str]:
87
+ return list(self.additional_properties.keys())
88
+
89
+ def __getitem__(self, key: str) -> Any:
90
+ return self.additional_properties[key]
91
+
92
+ def __setitem__(self, key: str, value: Any) -> None:
93
+ self.additional_properties[key] = value
94
+
95
+ def __delitem__(self, key: str) -> None:
96
+ del self.additional_properties[key]
97
+
98
+ def __contains__(self, key: str) -> bool:
99
+ return key in self.additional_properties
@@ -14,19 +14,20 @@ T = TypeVar("T", bound="BasicUser")
14
14
  class BasicUser:
15
15
  """
16
16
  Attributes:
17
- url (str):
18
- uuid (UUID):
19
- username (str): Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters
20
- full_name (str):
17
+ url (Union[Unset, str]):
18
+ uuid (Union[Unset, UUID]):
19
+ username (Union[Unset, str]): Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_
20
+ characters
21
+ full_name (Union[Unset, str]):
21
22
  native_name (Union[Unset, str]):
22
23
  email (Union[Unset, str]):
23
24
  image (Union[None, Unset, str]):
24
25
  """
25
26
 
26
- url: str
27
- uuid: UUID
28
- username: str
29
- full_name: str
27
+ url: Union[Unset, str] = UNSET
28
+ uuid: Union[Unset, UUID] = UNSET
29
+ username: Union[Unset, str] = UNSET
30
+ full_name: Union[Unset, str] = UNSET
30
31
  native_name: Union[Unset, str] = UNSET
31
32
  email: Union[Unset, str] = UNSET
32
33
  image: Union[None, Unset, str] = UNSET
@@ -35,7 +36,9 @@ class BasicUser:
35
36
  def to_dict(self) -> dict[str, Any]:
36
37
  url = self.url
37
38
 
38
- uuid = str(self.uuid)
39
+ uuid: Union[Unset, str] = UNSET
40
+ if not isinstance(self.uuid, Unset):
41
+ uuid = str(self.uuid)
39
42
 
40
43
  username = self.username
41
44
 
@@ -53,14 +56,15 @@ class BasicUser:
53
56
 
54
57
  field_dict: dict[str, Any] = {}
55
58
  field_dict.update(self.additional_properties)
56
- field_dict.update(
57
- {
58
- "url": url,
59
- "uuid": uuid,
60
- "username": username,
61
- "full_name": full_name,
62
- }
63
- )
59
+ field_dict.update({})
60
+ if url is not UNSET:
61
+ field_dict["url"] = url
62
+ if uuid is not UNSET:
63
+ field_dict["uuid"] = uuid
64
+ if username is not UNSET:
65
+ field_dict["username"] = username
66
+ if full_name is not UNSET:
67
+ field_dict["full_name"] = full_name
64
68
  if native_name is not UNSET:
65
69
  field_dict["native_name"] = native_name
66
70
  if email is not UNSET:
@@ -73,13 +77,18 @@ class BasicUser:
73
77
  @classmethod
74
78
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
75
79
  d = dict(src_dict)
76
- url = d.pop("url")
80
+ url = d.pop("url", UNSET)
77
81
 
78
- uuid = UUID(d.pop("uuid"))
82
+ _uuid = d.pop("uuid", UNSET)
83
+ uuid: Union[Unset, UUID]
84
+ if isinstance(_uuid, Unset):
85
+ uuid = UNSET
86
+ else:
87
+ uuid = UUID(_uuid)
79
88
 
80
- username = d.pop("username")
89
+ username = d.pop("username", UNSET)
81
90
 
82
- full_name = d.pop("full_name")
91
+ full_name = d.pop("full_name", UNSET)
83
92
 
84
93
  native_name = d.pop("native_name", UNSET)
85
94
 
@@ -24,6 +24,7 @@ class BookingOfferingsListFieldItem(str, Enum):
24
24
  FULL_DESCRIPTION = "full_description"
25
25
  GETTING_STARTED = "getting_started"
26
26
  GOOGLECALENDAR = "googlecalendar"
27
+ HAS_COMPLIANCE_REQUIREMENTS = "has_compliance_requirements"
27
28
  IMAGE = "image"
28
29
  INTEGRATION_GUIDE = "integration_guide"
29
30
  LATITUDE = "latitude"
@@ -54,8 +55,6 @@ class BookingOfferingsListFieldItem(str, Enum):
54
55
  SHARED = "shared"
55
56
  SLUG = "slug"
56
57
  STATE = "state"
57
- TERMS_OF_SERVICE = "terms_of_service"
58
- TERMS_OF_SERVICE_LINK = "terms_of_service_link"
59
58
  THUMBNAIL = "thumbnail"
60
59
  TOTAL_COST = "total_cost"
61
60
  TOTAL_COST_ESTIMATED = "total_cost_estimated"
@@ -24,6 +24,7 @@ class BookingOfferingsRetrieveFieldItem(str, Enum):
24
24
  FULL_DESCRIPTION = "full_description"
25
25
  GETTING_STARTED = "getting_started"
26
26
  GOOGLECALENDAR = "googlecalendar"
27
+ HAS_COMPLIANCE_REQUIREMENTS = "has_compliance_requirements"
27
28
  IMAGE = "image"
28
29
  INTEGRATION_GUIDE = "integration_guide"
29
30
  LATITUDE = "latitude"
@@ -54,8 +55,6 @@ class BookingOfferingsRetrieveFieldItem(str, Enum):
54
55
  SHARED = "shared"
55
56
  SLUG = "slug"
56
57
  STATE = "state"
57
- TERMS_OF_SERVICE = "terms_of_service"
58
- TERMS_OF_SERVICE_LINK = "terms_of_service_link"
59
58
  THUMBNAIL = "thumbnail"
60
59
  TOTAL_COST = "total_cost"
61
60
  TOTAL_COST_ESTIMATED = "total_cost_estimated"