waldur-api-client 7.7.5__py3-none-any.whl → 7.7.6__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 (122) hide show
  1. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_retrieve.py +154 -0
  2. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_review_retrieve.py +154 -0
  3. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_completion_review_status_retrieve.py +154 -0
  4. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_completion_status_retrieve.py +154 -0
  5. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_submit_answers.py +179 -0
  6. waldur_api_client/api/marketplace_robot_accounts/marketplace_robot_accounts_list.py +23 -0
  7. waldur_api_client/api/marketplace_robot_accounts/marketplace_robot_accounts_retrieve.py +30 -1
  8. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_project_service_accounts_list.py +276 -0
  9. waldur_api_client/api/marketplace_service_providers/service_provider_compliance_overview.py +189 -0
  10. waldur_api_client/api/marketplace_service_providers/service_provider_offering_users_compliance.py +222 -0
  11. waldur_api_client/api/public_maintenance_announcements/__init__.py +1 -0
  12. waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_count.py +325 -0
  13. waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_list.py +328 -0
  14. waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_retrieve.py +144 -0
  15. waldur_api_client/models/__init__.py +56 -4
  16. waldur_api_client/models/admin_announcement.py +109 -1
  17. waldur_api_client/models/admin_announcement_maintenance_affected_offerings_item.py +103 -0
  18. waldur_api_client/models/admin_announcements_list_field_item.py +8 -0
  19. waldur_api_client/models/admin_announcements_retrieve_field_item.py +8 -0
  20. waldur_api_client/models/azure_sql_server_create_order_attributes.py +80 -0
  21. waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +96 -0
  22. waldur_api_client/models/basic_user.py +30 -21
  23. waldur_api_client/models/booking_offerings_list_field_item.py +1 -0
  24. waldur_api_client/models/booking_offerings_retrieve_field_item.py +1 -0
  25. waldur_api_client/models/create_router.py +1 -1
  26. waldur_api_client/models/create_router_request.py +1 -1
  27. waldur_api_client/models/customer.py +0 -30
  28. waldur_api_client/models/customers_list_field_item.py +0 -2
  29. waldur_api_client/models/customers_retrieve_field_item.py +0 -2
  30. waldur_api_client/models/fingerprint.py +19 -17
  31. waldur_api_client/models/instance_flavor_change_request.py +1 -1
  32. waldur_api_client/models/marketplace_managed_rancher_create_order_attributes.py +144 -0
  33. waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +1 -0
  34. waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +1 -0
  35. waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +1 -0
  36. waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +1 -0
  37. waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +1 -0
  38. waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +1 -0
  39. waldur_api_client/models/marketplace_public_offerings_list_field_item.py +1 -0
  40. waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +1 -0
  41. waldur_api_client/models/marketplace_rancher_create_order_attributes.py +142 -0
  42. waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +32 -0
  43. waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +32 -0
  44. waldur_api_client/models/offering.py +9 -0
  45. waldur_api_client/models/offering_create.py +8 -0
  46. waldur_api_client/models/open_stack_backend_instance.py +2 -2
  47. waldur_api_client/models/open_stack_backend_volumes.py +3 -3
  48. waldur_api_client/models/open_stack_backup.py +1 -1
  49. waldur_api_client/models/open_stack_backup_restoration.py +8 -5
  50. waldur_api_client/models/open_stack_backup_restoration_request.py +28 -3
  51. waldur_api_client/models/open_stack_fixed_ip.py +2 -2
  52. waldur_api_client/models/open_stack_fixed_ip_request.py +2 -2
  53. waldur_api_client/models/open_stack_floating_ip.py +5 -4
  54. waldur_api_client/models/open_stack_instance.py +17 -15
  55. waldur_api_client/models/open_stack_instance_allowed_address_pairs_update_request.py +3 -2
  56. waldur_api_client/models/open_stack_instance_availability_zone.py +1 -1
  57. waldur_api_client/models/open_stack_instance_create_order_attributes.py +280 -0
  58. waldur_api_client/models/open_stack_instance_request.py +4 -3
  59. waldur_api_client/models/open_stack_instance_security_groups_update_request.py +1 -1
  60. waldur_api_client/models/open_stack_nested_floating_ip.py +3 -3
  61. waldur_api_client/models/open_stack_nested_instance.py +1 -1
  62. waldur_api_client/models/open_stack_nested_port.py +5 -5
  63. waldur_api_client/models/open_stack_nested_port_request.py +1 -1
  64. waldur_api_client/models/open_stack_nested_security_group.py +1 -53
  65. waldur_api_client/models/open_stack_nested_security_group_request.py +59 -0
  66. waldur_api_client/models/open_stack_nested_sub_net.py +4 -4
  67. waldur_api_client/models/open_stack_nested_sub_net_request.py +4 -4
  68. waldur_api_client/models/open_stack_nested_volume.py +3 -3
  69. waldur_api_client/models/open_stack_nested_volume_request.py +3 -3
  70. waldur_api_client/models/open_stack_network.py +3 -3
  71. waldur_api_client/models/open_stack_port.py +10 -9
  72. waldur_api_client/models/open_stack_port_ip_update_request.py +2 -2
  73. waldur_api_client/models/open_stack_port_request.py +3 -3
  74. waldur_api_client/models/open_stack_router.py +2 -2
  75. waldur_api_client/models/open_stack_router_interface_request.py +4 -2
  76. waldur_api_client/models/open_stack_security_group_rule_create.py +6 -5
  77. waldur_api_client/models/open_stack_security_group_rule_create_request.py +6 -5
  78. waldur_api_client/models/open_stack_security_group_rule_update_request.py +6 -5
  79. waldur_api_client/models/open_stack_server_group.py +2 -1
  80. waldur_api_client/models/open_stack_server_group_request.py +2 -1
  81. waldur_api_client/models/open_stack_snapshot.py +2 -2
  82. waldur_api_client/models/open_stack_snapshot_restoration.py +1 -1
  83. waldur_api_client/models/open_stack_sub_net.py +5 -5
  84. waldur_api_client/models/open_stack_sub_net_request.py +2 -2
  85. waldur_api_client/models/open_stack_tenant.py +3 -3
  86. waldur_api_client/models/open_stack_tenant_create_order_attributes.py +109 -0
  87. waldur_api_client/models/open_stack_volume.py +9 -9
  88. waldur_api_client/models/open_stack_volume_create_order_attributes.py +152 -0
  89. waldur_api_client/models/open_stack_volume_request.py +1 -1
  90. waldur_api_client/models/order_create_request.py +165 -4
  91. waldur_api_client/models/patched_open_stack_instance_request.py +4 -3
  92. waldur_api_client/models/patched_open_stack_server_group_request.py +2 -1
  93. waldur_api_client/models/patched_open_stack_sub_net_request.py +2 -2
  94. waldur_api_client/models/patched_open_stack_volume_request.py +1 -1
  95. waldur_api_client/models/permission_request.py +2 -2
  96. waldur_api_client/models/provider_offering_details.py +9 -0
  97. waldur_api_client/models/public_maintenance_announcement.py +217 -0
  98. waldur_api_client/models/public_maintenance_announcement_state_enum.py +10 -0
  99. waldur_api_client/models/public_maintenance_announcements_count_o_item.py +15 -0
  100. waldur_api_client/models/public_maintenance_announcements_count_state_item.py +12 -0
  101. waldur_api_client/models/public_maintenance_announcements_list_o_item.py +15 -0
  102. waldur_api_client/models/public_maintenance_announcements_list_state_item.py +12 -0
  103. waldur_api_client/models/public_offering_details.py +9 -0
  104. waldur_api_client/models/rancher_cluster_security_group_rule.py +5 -4
  105. waldur_api_client/models/rancher_cluster_security_group_rule_request.py +5 -4
  106. waldur_api_client/models/remote_project_update_request.py +2 -2
  107. waldur_api_client/models/robot_account_details.py +226 -144
  108. waldur_api_client/models/service_provider_compliance_overview.py +122 -0
  109. waldur_api_client/models/service_provider_offering_user_compliance.py +179 -0
  110. waldur_api_client/models/service_provider_offering_user_compliance_state_enum.py +17 -0
  111. waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +72 -0
  112. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +225 -0
  113. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_1.py +155 -0
  114. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_2_type_1.py +155 -0
  115. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_3_type_1.py +155 -0
  116. waldur_api_client/models/volume_attach_request.py +1 -1
  117. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.6.dist-info}/METADATA +1 -1
  118. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.6.dist-info}/RECORD +120 -85
  119. waldur_api_client/models/nested_security_group_rule.py +0 -222
  120. waldur_api_client/models/nested_security_group_rule_request.py +0 -187
  121. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.6.dist-info}/LICENSE +0 -0
  122. {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.6.dist-info}/WHEEL +0 -0
@@ -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,80 @@
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
+ Attributes:
18
+ name (str):
19
+ location (str):
20
+ description (Union[Unset, str]):
21
+ """
22
+
23
+ name: str
24
+ location: str
25
+ description: Union[Unset, str] = UNSET
26
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
27
+
28
+ def to_dict(self) -> dict[str, Any]:
29
+ name = self.name
30
+
31
+ location = self.location
32
+
33
+ description = self.description
34
+
35
+ field_dict: dict[str, Any] = {}
36
+ field_dict.update(self.additional_properties)
37
+ field_dict.update(
38
+ {
39
+ "name": name,
40
+ "location": location,
41
+ }
42
+ )
43
+ if description is not UNSET:
44
+ field_dict["description"] = description
45
+
46
+ return field_dict
47
+
48
+ @classmethod
49
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
50
+ d = dict(src_dict)
51
+ name = d.pop("name")
52
+
53
+ location = d.pop("location")
54
+
55
+ description = d.pop("description", UNSET)
56
+
57
+ azure_sql_server_create_order_attributes = cls(
58
+ name=name,
59
+ location=location,
60
+ description=description,
61
+ )
62
+
63
+ azure_sql_server_create_order_attributes.additional_properties = d
64
+ return azure_sql_server_create_order_attributes
65
+
66
+ @property
67
+ def additional_keys(self) -> list[str]:
68
+ return list(self.additional_properties.keys())
69
+
70
+ def __getitem__(self, key: str) -> Any:
71
+ return self.additional_properties[key]
72
+
73
+ def __setitem__(self, key: str, value: Any) -> None:
74
+ self.additional_properties[key] = value
75
+
76
+ def __delitem__(self, key: str) -> None:
77
+ del self.additional_properties[key]
78
+
79
+ def __contains__(self, key: str) -> bool:
80
+ return key in self.additional_properties
@@ -0,0 +1,96 @@
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
+ Attributes:
18
+ name (str):
19
+ size (str):
20
+ image (str):
21
+ location (str):
22
+ description (Union[Unset, str]):
23
+ """
24
+
25
+ name: str
26
+ size: str
27
+ image: str
28
+ location: str
29
+ description: Union[Unset, str] = UNSET
30
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
31
+
32
+ def to_dict(self) -> dict[str, Any]:
33
+ name = self.name
34
+
35
+ size = self.size
36
+
37
+ image = self.image
38
+
39
+ location = self.location
40
+
41
+ description = self.description
42
+
43
+ field_dict: dict[str, Any] = {}
44
+ field_dict.update(self.additional_properties)
45
+ field_dict.update(
46
+ {
47
+ "name": name,
48
+ "size": size,
49
+ "image": image,
50
+ "location": location,
51
+ }
52
+ )
53
+ if description is not UNSET:
54
+ field_dict["description"] = description
55
+
56
+ return field_dict
57
+
58
+ @classmethod
59
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
60
+ d = dict(src_dict)
61
+ name = d.pop("name")
62
+
63
+ size = d.pop("size")
64
+
65
+ image = d.pop("image")
66
+
67
+ location = d.pop("location")
68
+
69
+ description = d.pop("description", UNSET)
70
+
71
+ azure_virtual_machine_create_order_attributes = cls(
72
+ name=name,
73
+ size=size,
74
+ image=image,
75
+ location=location,
76
+ description=description,
77
+ )
78
+
79
+ azure_virtual_machine_create_order_attributes.additional_properties = d
80
+ return azure_virtual_machine_create_order_attributes
81
+
82
+ @property
83
+ def additional_keys(self) -> list[str]:
84
+ return list(self.additional_properties.keys())
85
+
86
+ def __getitem__(self, key: str) -> Any:
87
+ return self.additional_properties[key]
88
+
89
+ def __setitem__(self, key: str, value: Any) -> None:
90
+ self.additional_properties[key] = value
91
+
92
+ def __delitem__(self, key: str) -> None:
93
+ del self.additional_properties[key]
94
+
95
+ def __contains__(self, key: str) -> bool:
96
+ 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"
@@ -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"
@@ -14,7 +14,7 @@ class CreateRouter:
14
14
  Attributes:
15
15
  url (str):
16
16
  uuid (UUID):
17
- tenant (str):
17
+ tenant (str): OpenStack tenant this router belongs to
18
18
  name (str):
19
19
  project (str):
20
20
  service_settings (str):
@@ -11,7 +11,7 @@ T = TypeVar("T", bound="CreateRouterRequest")
11
11
  class CreateRouterRequest:
12
12
  """
13
13
  Attributes:
14
- tenant (str):
14
+ tenant (str): OpenStack tenant this router belongs to
15
15
  name (str):
16
16
  """
17
17
 
@@ -13,7 +13,6 @@ from ..types import UNSET, Unset
13
13
 
14
14
  if TYPE_CHECKING:
15
15
  from ..models.nested_price_estimate import NestedPriceEstimate
16
- from ..models.organization_group import OrganizationGroup
17
16
  from ..models.payment_profile import PaymentProfile
18
17
 
19
18
 
@@ -27,7 +26,6 @@ class Customer:
27
26
  url (Union[Unset, str]):
28
27
  uuid (Union[Unset, UUID]):
29
28
  created (Union[Unset, datetime.datetime]):
30
- organization_groups (Union[Unset, list['OrganizationGroup']]):
31
29
  display_name (Union[Unset, str]):
32
30
  backend_id (Union[Unset, str]): Organization identifier in another application.
33
31
  image (Union[None, Unset, str]):
@@ -36,7 +34,6 @@ class Customer:
36
34
  default_tax_percent (Union[Unset, str]):
37
35
  accounting_start_date (Union[Unset, datetime.datetime]):
38
36
  projects_count (Union[Unset, int]):
39
- users_count (Union[Unset, int]):
40
37
  sponsor_number (Union[None, Unset, int]): External ID of the sponsor covering the costs
41
38
  country_name (Union[Unset, str]):
42
39
  max_service_accounts (Union[None, Unset, int]): Maximum number of service accounts allowed
@@ -74,7 +71,6 @@ class Customer:
74
71
  url: Union[Unset, str] = UNSET
75
72
  uuid: Union[Unset, UUID] = UNSET
76
73
  created: Union[Unset, datetime.datetime] = UNSET
77
- organization_groups: Union[Unset, list["OrganizationGroup"]] = UNSET
78
74
  display_name: Union[Unset, str] = UNSET
79
75
  backend_id: Union[Unset, str] = UNSET
80
76
  image: Union[None, Unset, str] = UNSET
@@ -83,7 +79,6 @@ class Customer:
83
79
  default_tax_percent: Union[Unset, str] = UNSET
84
80
  accounting_start_date: Union[Unset, datetime.datetime] = UNSET
85
81
  projects_count: Union[Unset, int] = UNSET
86
- users_count: Union[Unset, int] = UNSET
87
82
  sponsor_number: Union[None, Unset, int] = UNSET
88
83
  country_name: Union[Unset, str] = UNSET
89
84
  max_service_accounts: Union[None, Unset, int] = UNSET
@@ -128,13 +123,6 @@ class Customer:
128
123
  if not isinstance(self.created, Unset):
129
124
  created = self.created.isoformat()
130
125
 
131
- organization_groups: Union[Unset, list[dict[str, Any]]] = UNSET
132
- if not isinstance(self.organization_groups, Unset):
133
- organization_groups = []
134
- for organization_groups_item_data in self.organization_groups:
135
- organization_groups_item = organization_groups_item_data.to_dict()
136
- organization_groups.append(organization_groups_item)
137
-
138
126
  display_name = self.display_name
139
127
 
140
128
  backend_id = self.backend_id
@@ -157,8 +145,6 @@ class Customer:
157
145
 
158
146
  projects_count = self.projects_count
159
147
 
160
- users_count = self.users_count
161
-
162
148
  sponsor_number: Union[None, Unset, int]
163
149
  if isinstance(self.sponsor_number, Unset):
164
150
  sponsor_number = UNSET
@@ -281,8 +267,6 @@ class Customer:
281
267
  field_dict["uuid"] = uuid
282
268
  if created is not UNSET:
283
269
  field_dict["created"] = created
284
- if organization_groups is not UNSET:
285
- field_dict["organization_groups"] = organization_groups
286
270
  if display_name is not UNSET:
287
271
  field_dict["display_name"] = display_name
288
272
  if backend_id is not UNSET:
@@ -299,8 +283,6 @@ class Customer:
299
283
  field_dict["accounting_start_date"] = accounting_start_date
300
284
  if projects_count is not UNSET:
301
285
  field_dict["projects_count"] = projects_count
302
- if users_count is not UNSET:
303
- field_dict["users_count"] = users_count
304
286
  if sponsor_number is not UNSET:
305
287
  field_dict["sponsor_number"] = sponsor_number
306
288
  if country_name is not UNSET:
@@ -369,7 +351,6 @@ class Customer:
369
351
  @classmethod
370
352
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
371
353
  from ..models.nested_price_estimate import NestedPriceEstimate
372
- from ..models.organization_group import OrganizationGroup
373
354
  from ..models.payment_profile import PaymentProfile
374
355
 
375
356
  d = dict(src_dict)
@@ -389,13 +370,6 @@ class Customer:
389
370
  else:
390
371
  created = isoparse(_created)
391
372
 
392
- organization_groups = []
393
- _organization_groups = d.pop("organization_groups", UNSET)
394
- for organization_groups_item_data in _organization_groups or []:
395
- organization_groups_item = OrganizationGroup.from_dict(organization_groups_item_data)
396
-
397
- organization_groups.append(organization_groups_item)
398
-
399
373
  display_name = d.pop("display_name", UNSET)
400
374
 
401
375
  backend_id = d.pop("backend_id", UNSET)
@@ -424,8 +398,6 @@ class Customer:
424
398
 
425
399
  projects_count = d.pop("projects_count", UNSET)
426
400
 
427
- users_count = d.pop("users_count", UNSET)
428
-
429
401
  def _parse_sponsor_number(data: object) -> Union[None, Unset, int]:
430
402
  if data is None:
431
403
  return data
@@ -592,7 +564,6 @@ class Customer:
592
564
  url=url,
593
565
  uuid=uuid,
594
566
  created=created,
595
- organization_groups=organization_groups,
596
567
  display_name=display_name,
597
568
  backend_id=backend_id,
598
569
  image=image,
@@ -601,7 +572,6 @@ class Customer:
601
572
  default_tax_percent=default_tax_percent,
602
573
  accounting_start_date=accounting_start_date,
603
574
  projects_count=projects_count,
604
- users_count=users_count,
605
575
  sponsor_number=sponsor_number,
606
576
  country_name=country_name,
607
577
  max_service_accounts=max_service_accounts,
@@ -32,7 +32,6 @@ class CustomersListFieldItem(str, Enum):
32
32
  MAX_SERVICE_ACCOUNTS = "max_service_accounts"
33
33
  NAME = "name"
34
34
  NATIVE_NAME = "native_name"
35
- ORGANIZATION_GROUPS = "organization_groups"
36
35
  PAYMENT_PROFILES = "payment_profiles"
37
36
  PHONE_NUMBER = "phone_number"
38
37
  POSTAL = "postal"
@@ -43,7 +42,6 @@ class CustomersListFieldItem(str, Enum):
43
42
  SLUG = "slug"
44
43
  SPONSOR_NUMBER = "sponsor_number"
45
44
  URL = "url"
46
- USERS_COUNT = "users_count"
47
45
  UUID = "uuid"
48
46
  VAT_CODE = "vat_code"
49
47
 
@@ -32,7 +32,6 @@ class CustomersRetrieveFieldItem(str, Enum):
32
32
  MAX_SERVICE_ACCOUNTS = "max_service_accounts"
33
33
  NAME = "name"
34
34
  NATIVE_NAME = "native_name"
35
- ORGANIZATION_GROUPS = "organization_groups"
36
35
  PAYMENT_PROFILES = "payment_profiles"
37
36
  PHONE_NUMBER = "phone_number"
38
37
  POSTAL = "postal"
@@ -43,7 +42,6 @@ class CustomersRetrieveFieldItem(str, Enum):
43
42
  SLUG = "slug"
44
43
  SPONSOR_NUMBER = "sponsor_number"
45
44
  URL = "url"
46
- USERS_COUNT = "users_count"
47
45
  UUID = "uuid"
48
46
  VAT_CODE = "vat_code"
49
47
 
@@ -1,9 +1,11 @@
1
1
  from collections.abc import Mapping
2
- from typing import Any, TypeVar
2
+ from typing import Any, TypeVar, Union
3
3
 
4
4
  from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
6
6
 
7
+ from ..types import UNSET, Unset
8
+
7
9
  T = TypeVar("T", bound="Fingerprint")
8
10
 
9
11
 
@@ -11,14 +13,14 @@ T = TypeVar("T", bound="Fingerprint")
11
13
  class Fingerprint:
12
14
  """
13
15
  Attributes:
14
- md5 (str):
15
- sha256 (str):
16
- sha512 (str):
16
+ md5 (Union[Unset, str]):
17
+ sha256 (Union[Unset, str]):
18
+ sha512 (Union[Unset, str]):
17
19
  """
18
20
 
19
- md5: str
20
- sha256: str
21
- sha512: str
21
+ md5: Union[Unset, str] = UNSET
22
+ sha256: Union[Unset, str] = UNSET
23
+ sha512: Union[Unset, str] = UNSET
22
24
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
23
25
 
24
26
  def to_dict(self) -> dict[str, Any]:
@@ -30,24 +32,24 @@ class Fingerprint:
30
32
 
31
33
  field_dict: dict[str, Any] = {}
32
34
  field_dict.update(self.additional_properties)
33
- field_dict.update(
34
- {
35
- "md5": md5,
36
- "sha256": sha256,
37
- "sha512": sha512,
38
- }
39
- )
35
+ field_dict.update({})
36
+ if md5 is not UNSET:
37
+ field_dict["md5"] = md5
38
+ if sha256 is not UNSET:
39
+ field_dict["sha256"] = sha256
40
+ if sha512 is not UNSET:
41
+ field_dict["sha512"] = sha512
40
42
 
41
43
  return field_dict
42
44
 
43
45
  @classmethod
44
46
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
45
47
  d = dict(src_dict)
46
- md5 = d.pop("md5")
48
+ md5 = d.pop("md5", UNSET)
47
49
 
48
- sha256 = d.pop("sha256")
50
+ sha256 = d.pop("sha256", UNSET)
49
51
 
50
- sha512 = d.pop("sha512")
52
+ sha512 = d.pop("sha512", UNSET)
51
53
 
52
54
  fingerprint = cls(
53
55
  md5=md5,
@@ -11,7 +11,7 @@ T = TypeVar("T", bound="InstanceFlavorChangeRequest")
11
11
  class InstanceFlavorChangeRequest:
12
12
  """
13
13
  Attributes:
14
- flavor (str):
14
+ flavor (str): The new flavor to use for the instance. Flavor change can only be done when instance is stopped.
15
15
  """
16
16
 
17
17
  flavor: str