waldur-api-client 7.7.2__py3-none-any.whl → 7.7.3__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 (24) hide show
  1. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py +23 -0
  2. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_set_pending_account_linking.py +105 -0
  3. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_set_pending_additional_validation.py +105 -0
  4. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_set_validation_complete.py +105 -0
  5. waldur_api_client/models/__init__.py +8 -0
  6. waldur_api_client/models/event_types_enum.py +1 -0
  7. waldur_api_client/models/group_invitation.py +27 -3
  8. waldur_api_client/models/group_invitation_request.py +18 -0
  9. waldur_api_client/models/impact_level_display_enum.py +11 -0
  10. waldur_api_client/models/invitation.py +10 -4
  11. waldur_api_client/models/maintenance_announcement.py +8 -0
  12. waldur_api_client/models/maintenance_announcement_offering.py +17 -0
  13. waldur_api_client/models/maintenance_announcement_state_enum.py +7 -7
  14. waldur_api_client/models/marketplace_offering_users_list_field_item.py +2 -0
  15. waldur_api_client/models/marketplace_offering_users_list_state_item.py +16 -0
  16. waldur_api_client/models/marketplace_offering_users_retrieve_field_item.py +2 -0
  17. waldur_api_client/models/offering_user.py +27 -0
  18. waldur_api_client/models/offering_user_state_enum.py +16 -0
  19. waldur_api_client/models/offering_user_state_transition_request.py +59 -0
  20. waldur_api_client/models/visible_invitation_details.py +10 -4
  21. {waldur_api_client-7.7.2.dist-info → waldur_api_client-7.7.3.dist-info}/METADATA +1 -1
  22. {waldur_api_client-7.7.2.dist-info → waldur_api_client-7.7.3.dist-info}/RECORD +24 -17
  23. {waldur_api_client-7.7.2.dist-info → waldur_api_client-7.7.3.dist-info}/LICENSE +0 -0
  24. {waldur_api_client-7.7.2.dist-info → waldur_api_client-7.7.3.dist-info}/WHEEL +0 -0
@@ -9,6 +9,7 @@ from ... import errors
9
9
  from ...client import AuthenticatedClient, Client
10
10
  from ...models.marketplace_offering_users_list_field_item import MarketplaceOfferingUsersListFieldItem
11
11
  from ...models.marketplace_offering_users_list_o_item import MarketplaceOfferingUsersListOItem
12
+ from ...models.marketplace_offering_users_list_state_item import MarketplaceOfferingUsersListStateItem
12
13
  from ...models.offering_user import OfferingUser
13
14
  from ...types import UNSET, Response, Unset
14
15
 
@@ -27,6 +28,7 @@ def _get_kwargs(
27
28
  parent_offering_uuid: Union[Unset, UUID] = UNSET,
28
29
  provider_uuid: Union[Unset, UUID] = UNSET,
29
30
  query: Union[Unset, str] = UNSET,
31
+ state: Union[Unset, list[MarketplaceOfferingUsersListStateItem]] = UNSET,
30
32
  user_username: Union[Unset, str] = UNSET,
31
33
  user_uuid: Union[Unset, UUID] = UNSET,
32
34
  ) -> dict[str, Any]:
@@ -85,6 +87,15 @@ def _get_kwargs(
85
87
 
86
88
  params["query"] = query
87
89
 
90
+ json_state: Union[Unset, list[str]] = UNSET
91
+ if not isinstance(state, Unset):
92
+ json_state = []
93
+ for state_item_data in state:
94
+ state_item = state_item_data.value
95
+ json_state.append(state_item)
96
+
97
+ params["state"] = json_state
98
+
88
99
  params["user_username"] = user_username
89
100
 
90
101
  json_user_uuid: Union[Unset, str] = UNSET
@@ -142,6 +153,7 @@ def sync_detailed(
142
153
  parent_offering_uuid: Union[Unset, UUID] = UNSET,
143
154
  provider_uuid: Union[Unset, UUID] = UNSET,
144
155
  query: Union[Unset, str] = UNSET,
156
+ state: Union[Unset, list[MarketplaceOfferingUsersListStateItem]] = UNSET,
145
157
  user_username: Union[Unset, str] = UNSET,
146
158
  user_uuid: Union[Unset, UUID] = UNSET,
147
159
  ) -> Response[list["OfferingUser"]]:
@@ -160,6 +172,7 @@ def sync_detailed(
160
172
  parent_offering_uuid (Union[Unset, UUID]):
161
173
  provider_uuid (Union[Unset, UUID]):
162
174
  query (Union[Unset, str]):
175
+ state (Union[Unset, list[MarketplaceOfferingUsersListStateItem]]):
163
176
  user_username (Union[Unset, str]):
164
177
  user_uuid (Union[Unset, UUID]):
165
178
 
@@ -184,6 +197,7 @@ def sync_detailed(
184
197
  parent_offering_uuid=parent_offering_uuid,
185
198
  provider_uuid=provider_uuid,
186
199
  query=query,
200
+ state=state,
187
201
  user_username=user_username,
188
202
  user_uuid=user_uuid,
189
203
  )
@@ -210,6 +224,7 @@ def sync(
210
224
  parent_offering_uuid: Union[Unset, UUID] = UNSET,
211
225
  provider_uuid: Union[Unset, UUID] = UNSET,
212
226
  query: Union[Unset, str] = UNSET,
227
+ state: Union[Unset, list[MarketplaceOfferingUsersListStateItem]] = UNSET,
213
228
  user_username: Union[Unset, str] = UNSET,
214
229
  user_uuid: Union[Unset, UUID] = UNSET,
215
230
  ) -> list["OfferingUser"]:
@@ -228,6 +243,7 @@ def sync(
228
243
  parent_offering_uuid (Union[Unset, UUID]):
229
244
  provider_uuid (Union[Unset, UUID]):
230
245
  query (Union[Unset, str]):
246
+ state (Union[Unset, list[MarketplaceOfferingUsersListStateItem]]):
231
247
  user_username (Union[Unset, str]):
232
248
  user_uuid (Union[Unset, UUID]):
233
249
 
@@ -253,6 +269,7 @@ def sync(
253
269
  parent_offering_uuid=parent_offering_uuid,
254
270
  provider_uuid=provider_uuid,
255
271
  query=query,
272
+ state=state,
256
273
  user_username=user_username,
257
274
  user_uuid=user_uuid,
258
275
  ).parsed
@@ -273,6 +290,7 @@ async def asyncio_detailed(
273
290
  parent_offering_uuid: Union[Unset, UUID] = UNSET,
274
291
  provider_uuid: Union[Unset, UUID] = UNSET,
275
292
  query: Union[Unset, str] = UNSET,
293
+ state: Union[Unset, list[MarketplaceOfferingUsersListStateItem]] = UNSET,
276
294
  user_username: Union[Unset, str] = UNSET,
277
295
  user_uuid: Union[Unset, UUID] = UNSET,
278
296
  ) -> Response[list["OfferingUser"]]:
@@ -291,6 +309,7 @@ async def asyncio_detailed(
291
309
  parent_offering_uuid (Union[Unset, UUID]):
292
310
  provider_uuid (Union[Unset, UUID]):
293
311
  query (Union[Unset, str]):
312
+ state (Union[Unset, list[MarketplaceOfferingUsersListStateItem]]):
294
313
  user_username (Union[Unset, str]):
295
314
  user_uuid (Union[Unset, UUID]):
296
315
 
@@ -315,6 +334,7 @@ async def asyncio_detailed(
315
334
  parent_offering_uuid=parent_offering_uuid,
316
335
  provider_uuid=provider_uuid,
317
336
  query=query,
337
+ state=state,
318
338
  user_username=user_username,
319
339
  user_uuid=user_uuid,
320
340
  )
@@ -339,6 +359,7 @@ async def asyncio(
339
359
  parent_offering_uuid: Union[Unset, UUID] = UNSET,
340
360
  provider_uuid: Union[Unset, UUID] = UNSET,
341
361
  query: Union[Unset, str] = UNSET,
362
+ state: Union[Unset, list[MarketplaceOfferingUsersListStateItem]] = UNSET,
342
363
  user_username: Union[Unset, str] = UNSET,
343
364
  user_uuid: Union[Unset, UUID] = UNSET,
344
365
  ) -> list["OfferingUser"]:
@@ -357,6 +378,7 @@ async def asyncio(
357
378
  parent_offering_uuid (Union[Unset, UUID]):
358
379
  provider_uuid (Union[Unset, UUID]):
359
380
  query (Union[Unset, str]):
381
+ state (Union[Unset, list[MarketplaceOfferingUsersListStateItem]]):
360
382
  user_username (Union[Unset, str]):
361
383
  user_uuid (Union[Unset, UUID]):
362
384
 
@@ -383,6 +405,7 @@ async def asyncio(
383
405
  parent_offering_uuid=parent_offering_uuid,
384
406
  provider_uuid=provider_uuid,
385
407
  query=query,
408
+ state=state,
386
409
  user_username=user_username,
387
410
  user_uuid=user_uuid,
388
411
  )
@@ -0,0 +1,105 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Union
3
+ from uuid import UUID
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.offering_user_state_transition_request import OfferingUserStateTransitionRequest
10
+ from ...types import Response
11
+
12
+
13
+ def _get_kwargs(
14
+ uuid: UUID,
15
+ *,
16
+ body: OfferingUserStateTransitionRequest,
17
+ ) -> dict[str, Any]:
18
+ headers: dict[str, Any] = {}
19
+
20
+ _kwargs: dict[str, Any] = {
21
+ "method": "post",
22
+ "url": f"/api/marketplace-offering-users/{uuid}/set_pending_account_linking/",
23
+ }
24
+
25
+ _kwargs["json"] = body.to_dict()
26
+
27
+ headers["Content-Type"] = "application/json"
28
+
29
+ _kwargs["headers"] = headers
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Any:
34
+ if response.status_code == 200:
35
+ return None
36
+ raise errors.UnexpectedStatus(response.status_code, response.content)
37
+
38
+
39
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
40
+ return Response(
41
+ status_code=HTTPStatus(response.status_code),
42
+ content=response.content,
43
+ headers=response.headers,
44
+ parsed=_parse_response(client=client, response=response),
45
+ )
46
+
47
+
48
+ def sync_detailed(
49
+ uuid: UUID,
50
+ *,
51
+ client: AuthenticatedClient,
52
+ body: OfferingUserStateTransitionRequest,
53
+ ) -> Response[Any]:
54
+ """
55
+ Args:
56
+ uuid (UUID):
57
+ body (OfferingUserStateTransitionRequest):
58
+
59
+ Raises:
60
+ errors.UnexpectedStatus: If the server returns an undocumented status code.
61
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
62
+
63
+ Returns:
64
+ Response[Any]
65
+ """
66
+
67
+ kwargs = _get_kwargs(
68
+ uuid=uuid,
69
+ body=body,
70
+ )
71
+
72
+ response = client.get_httpx_client().request(
73
+ **kwargs,
74
+ )
75
+
76
+ return _build_response(client=client, response=response)
77
+
78
+
79
+ async def asyncio_detailed(
80
+ uuid: UUID,
81
+ *,
82
+ client: AuthenticatedClient,
83
+ body: OfferingUserStateTransitionRequest,
84
+ ) -> Response[Any]:
85
+ """
86
+ Args:
87
+ uuid (UUID):
88
+ body (OfferingUserStateTransitionRequest):
89
+
90
+ Raises:
91
+ errors.UnexpectedStatus: If the server returns an undocumented status code.
92
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
93
+
94
+ Returns:
95
+ Response[Any]
96
+ """
97
+
98
+ kwargs = _get_kwargs(
99
+ uuid=uuid,
100
+ body=body,
101
+ )
102
+
103
+ response = await client.get_async_httpx_client().request(**kwargs)
104
+
105
+ return _build_response(client=client, response=response)
@@ -0,0 +1,105 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Union
3
+ from uuid import UUID
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.offering_user_state_transition_request import OfferingUserStateTransitionRequest
10
+ from ...types import Response
11
+
12
+
13
+ def _get_kwargs(
14
+ uuid: UUID,
15
+ *,
16
+ body: OfferingUserStateTransitionRequest,
17
+ ) -> dict[str, Any]:
18
+ headers: dict[str, Any] = {}
19
+
20
+ _kwargs: dict[str, Any] = {
21
+ "method": "post",
22
+ "url": f"/api/marketplace-offering-users/{uuid}/set_pending_additional_validation/",
23
+ }
24
+
25
+ _kwargs["json"] = body.to_dict()
26
+
27
+ headers["Content-Type"] = "application/json"
28
+
29
+ _kwargs["headers"] = headers
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Any:
34
+ if response.status_code == 200:
35
+ return None
36
+ raise errors.UnexpectedStatus(response.status_code, response.content)
37
+
38
+
39
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
40
+ return Response(
41
+ status_code=HTTPStatus(response.status_code),
42
+ content=response.content,
43
+ headers=response.headers,
44
+ parsed=_parse_response(client=client, response=response),
45
+ )
46
+
47
+
48
+ def sync_detailed(
49
+ uuid: UUID,
50
+ *,
51
+ client: AuthenticatedClient,
52
+ body: OfferingUserStateTransitionRequest,
53
+ ) -> Response[Any]:
54
+ """
55
+ Args:
56
+ uuid (UUID):
57
+ body (OfferingUserStateTransitionRequest):
58
+
59
+ Raises:
60
+ errors.UnexpectedStatus: If the server returns an undocumented status code.
61
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
62
+
63
+ Returns:
64
+ Response[Any]
65
+ """
66
+
67
+ kwargs = _get_kwargs(
68
+ uuid=uuid,
69
+ body=body,
70
+ )
71
+
72
+ response = client.get_httpx_client().request(
73
+ **kwargs,
74
+ )
75
+
76
+ return _build_response(client=client, response=response)
77
+
78
+
79
+ async def asyncio_detailed(
80
+ uuid: UUID,
81
+ *,
82
+ client: AuthenticatedClient,
83
+ body: OfferingUserStateTransitionRequest,
84
+ ) -> Response[Any]:
85
+ """
86
+ Args:
87
+ uuid (UUID):
88
+ body (OfferingUserStateTransitionRequest):
89
+
90
+ Raises:
91
+ errors.UnexpectedStatus: If the server returns an undocumented status code.
92
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
93
+
94
+ Returns:
95
+ Response[Any]
96
+ """
97
+
98
+ kwargs = _get_kwargs(
99
+ uuid=uuid,
100
+ body=body,
101
+ )
102
+
103
+ response = await client.get_async_httpx_client().request(**kwargs)
104
+
105
+ return _build_response(client=client, response=response)
@@ -0,0 +1,105 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Union
3
+ from uuid import UUID
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.offering_user_request import OfferingUserRequest
10
+ from ...types import Response
11
+
12
+
13
+ def _get_kwargs(
14
+ uuid: UUID,
15
+ *,
16
+ body: OfferingUserRequest,
17
+ ) -> dict[str, Any]:
18
+ headers: dict[str, Any] = {}
19
+
20
+ _kwargs: dict[str, Any] = {
21
+ "method": "post",
22
+ "url": f"/api/marketplace-offering-users/{uuid}/set_validation_complete/",
23
+ }
24
+
25
+ _kwargs["json"] = body.to_dict()
26
+
27
+ headers["Content-Type"] = "application/json"
28
+
29
+ _kwargs["headers"] = headers
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Any:
34
+ if response.status_code == 200:
35
+ return None
36
+ raise errors.UnexpectedStatus(response.status_code, response.content)
37
+
38
+
39
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
40
+ return Response(
41
+ status_code=HTTPStatus(response.status_code),
42
+ content=response.content,
43
+ headers=response.headers,
44
+ parsed=_parse_response(client=client, response=response),
45
+ )
46
+
47
+
48
+ def sync_detailed(
49
+ uuid: UUID,
50
+ *,
51
+ client: AuthenticatedClient,
52
+ body: OfferingUserRequest,
53
+ ) -> Response[Any]:
54
+ """
55
+ Args:
56
+ uuid (UUID):
57
+ body (OfferingUserRequest):
58
+
59
+ Raises:
60
+ errors.UnexpectedStatus: If the server returns an undocumented status code.
61
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
62
+
63
+ Returns:
64
+ Response[Any]
65
+ """
66
+
67
+ kwargs = _get_kwargs(
68
+ uuid=uuid,
69
+ body=body,
70
+ )
71
+
72
+ response = client.get_httpx_client().request(
73
+ **kwargs,
74
+ )
75
+
76
+ return _build_response(client=client, response=response)
77
+
78
+
79
+ async def asyncio_detailed(
80
+ uuid: UUID,
81
+ *,
82
+ client: AuthenticatedClient,
83
+ body: OfferingUserRequest,
84
+ ) -> Response[Any]:
85
+ """
86
+ Args:
87
+ uuid (UUID):
88
+ body (OfferingUserRequest):
89
+
90
+ Raises:
91
+ errors.UnexpectedStatus: If the server returns an undocumented status code.
92
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
93
+
94
+ Returns:
95
+ Response[Any]
96
+ """
97
+
98
+ kwargs = _get_kwargs(
99
+ uuid=uuid,
100
+ body=body,
101
+ )
102
+
103
+ response = await client.get_async_httpx_client().request(**kwargs)
104
+
105
+ return _build_response(client=client, response=response)
@@ -312,6 +312,7 @@ from .identity_provider_request import IdentityProviderRequest
312
312
  from .image_create_request import ImageCreateRequest
313
313
  from .image_create_response import ImageCreateResponse
314
314
  from .image_upload_response import ImageUploadResponse
315
+ from .impact_level_display_enum import ImpactLevelDisplayEnum
315
316
  from .impact_level_enum import ImpactLevelEnum
316
317
  from .import_resource_request import ImportResourceRequest
317
318
  from .importable_resource import ImportableResource
@@ -422,6 +423,7 @@ from .marketplace_offering_permissions_log_list_o_item import MarketplaceOfferin
422
423
  from .marketplace_offering_referrals_list_o_item import MarketplaceOfferingReferralsListOItem
423
424
  from .marketplace_offering_users_list_field_item import MarketplaceOfferingUsersListFieldItem
424
425
  from .marketplace_offering_users_list_o_item import MarketplaceOfferingUsersListOItem
426
+ from .marketplace_offering_users_list_state_item import MarketplaceOfferingUsersListStateItem
425
427
  from .marketplace_offering_users_retrieve_field_item import MarketplaceOfferingUsersRetrieveFieldItem
426
428
  from .marketplace_orders_list_field_item import MarketplaceOrdersListFieldItem
427
429
  from .marketplace_orders_list_o_item import MarketplaceOrdersListOItem
@@ -616,6 +618,8 @@ from .offering_user import OfferingUser
616
618
  from .offering_user_request import OfferingUserRequest
617
619
  from .offering_user_role import OfferingUserRole
618
620
  from .offering_user_role_request import OfferingUserRoleRequest
621
+ from .offering_user_state_enum import OfferingUserStateEnum
622
+ from .offering_user_state_transition_request import OfferingUserStateTransitionRequest
619
623
  from .offering_user_update_restriction_request import OfferingUserUpdateRestrictionRequest
620
624
  from .open_stack_allowed_address_pair import OpenStackAllowedAddressPair
621
625
  from .open_stack_allowed_address_pair_request import OpenStackAllowedAddressPairRequest
@@ -1623,6 +1627,7 @@ __all__ = (
1623
1627
  "ImageCreateRequest",
1624
1628
  "ImageCreateResponse",
1625
1629
  "ImageUploadResponse",
1630
+ "ImpactLevelDisplayEnum",
1626
1631
  "ImpactLevelEnum",
1627
1632
  "ImportableResource",
1628
1633
  "ImportResourceRequest",
@@ -1729,6 +1734,7 @@ __all__ = (
1729
1734
  "MarketplaceOfferingReferralsListOItem",
1730
1735
  "MarketplaceOfferingUsersListFieldItem",
1731
1736
  "MarketplaceOfferingUsersListOItem",
1737
+ "MarketplaceOfferingUsersListStateItem",
1732
1738
  "MarketplaceOfferingUsersRetrieveFieldItem",
1733
1739
  "MarketplaceOrdersListFieldItem",
1734
1740
  "MarketplaceOrdersListOItem",
@@ -1899,6 +1905,8 @@ __all__ = (
1899
1905
  "OfferingUserRequest",
1900
1906
  "OfferingUserRole",
1901
1907
  "OfferingUserRoleRequest",
1908
+ "OfferingUserStateEnum",
1909
+ "OfferingUserStateTransitionRequest",
1902
1910
  "OfferingUserUpdateRestrictionRequest",
1903
1911
  "OpenStackAllowedAddressPair",
1904
1912
  "OpenStackAllowedAddressPairRequest",
@@ -50,6 +50,7 @@ class EventTypesEnum(str, Enum):
50
50
  MARKETPLACE_OFFERING_USER_CREATED = "marketplace_offering_user_created"
51
51
  MARKETPLACE_OFFERING_USER_DELETED = "marketplace_offering_user_deleted"
52
52
  MARKETPLACE_OFFERING_USER_RESTRICTION_UPDATED = "marketplace_offering_user_restriction_updated"
53
+ MARKETPLACE_OFFERING_USER_UPDATED = "marketplace_offering_user_updated"
53
54
  MARKETPLACE_ORDER_APPROVED = "marketplace_order_approved"
54
55
  MARKETPLACE_ORDER_COMPLETED = "marketplace_order_completed"
55
56
  MARKETPLACE_ORDER_CREATED = "marketplace_order_created"
@@ -18,7 +18,7 @@ class GroupInvitation:
18
18
  Attributes:
19
19
  scope_uuid (UUID):
20
20
  scope_name (str):
21
- scope_type (str):
21
+ scope_type (Union[None, str]):
22
22
  customer_uuid (UUID):
23
23
  customer_name (str):
24
24
  role_name (str):
@@ -36,11 +36,13 @@ class GroupInvitation:
36
36
  project_name_template (Union[None, Unset, str]): Template for project name. Supports {username}, {email},
37
37
  {full_name} variables
38
38
  project_role (Union[None, UUID, Unset]):
39
+ user_affiliations (Union[Unset, Any]):
40
+ user_email_patterns (Union[Unset, Any]):
39
41
  """
40
42
 
41
43
  scope_uuid: UUID
42
44
  scope_name: str
43
- scope_type: str
45
+ scope_type: Union[None, str]
44
46
  customer_uuid: UUID
45
47
  customer_name: str
46
48
  role_name: str
@@ -56,6 +58,8 @@ class GroupInvitation:
56
58
  auto_create_project: Union[Unset, bool] = UNSET
57
59
  project_name_template: Union[None, Unset, str] = UNSET
58
60
  project_role: Union[None, UUID, Unset] = UNSET
61
+ user_affiliations: Union[Unset, Any] = UNSET
62
+ user_email_patterns: Union[Unset, Any] = UNSET
59
63
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
60
64
 
61
65
  def to_dict(self) -> dict[str, Any]:
@@ -63,6 +67,7 @@ class GroupInvitation:
63
67
 
64
68
  scope_name = self.scope_name
65
69
 
70
+ scope_type: Union[None, str]
66
71
  scope_type = self.scope_type
67
72
 
68
73
  customer_uuid = str(self.customer_uuid)
@@ -105,6 +110,10 @@ class GroupInvitation:
105
110
  else:
106
111
  project_role = self.project_role
107
112
 
113
+ user_affiliations = self.user_affiliations
114
+
115
+ user_email_patterns = self.user_email_patterns
116
+
108
117
  field_dict: dict[str, Any] = {}
109
118
  field_dict.update(self.additional_properties)
110
119
  field_dict.update(
@@ -132,6 +141,10 @@ class GroupInvitation:
132
141
  field_dict["project_name_template"] = project_name_template
133
142
  if project_role is not UNSET:
134
143
  field_dict["project_role"] = project_role
144
+ if user_affiliations is not UNSET:
145
+ field_dict["user_affiliations"] = user_affiliations
146
+ if user_email_patterns is not UNSET:
147
+ field_dict["user_email_patterns"] = user_email_patterns
135
148
 
136
149
  return field_dict
137
150
 
@@ -142,7 +155,12 @@ class GroupInvitation:
142
155
 
143
156
  scope_name = d.pop("scope_name")
144
157
 
145
- scope_type = d.pop("scope_type")
158
+ def _parse_scope_type(data: object) -> Union[None, str]:
159
+ if data is None:
160
+ return data
161
+ return cast(Union[None, str], data)
162
+
163
+ scope_type = _parse_scope_type(d.pop("scope_type"))
146
164
 
147
165
  customer_uuid = UUID(d.pop("customer_uuid"))
148
166
 
@@ -196,6 +214,10 @@ class GroupInvitation:
196
214
 
197
215
  project_role = _parse_project_role(d.pop("project_role", UNSET))
198
216
 
217
+ user_affiliations = d.pop("user_affiliations", UNSET)
218
+
219
+ user_email_patterns = d.pop("user_email_patterns", UNSET)
220
+
199
221
  group_invitation = cls(
200
222
  scope_uuid=scope_uuid,
201
223
  scope_name=scope_name,
@@ -215,6 +237,8 @@ class GroupInvitation:
215
237
  auto_create_project=auto_create_project,
216
238
  project_name_template=project_name_template,
217
239
  project_role=project_role,
240
+ user_affiliations=user_affiliations,
241
+ user_email_patterns=user_email_patterns,
218
242
  )
219
243
 
220
244
  group_invitation.additional_properties = d
@@ -21,6 +21,8 @@ class GroupInvitationRequest:
21
21
  project_name_template (Union[None, Unset, str]): Template for project name. Supports {username}, {email},
22
22
  {full_name} variables
23
23
  project_role (Union[None, UUID, Unset]):
24
+ user_affiliations (Union[Unset, Any]):
25
+ user_email_patterns (Union[Unset, Any]):
24
26
  """
25
27
 
26
28
  role: UUID
@@ -28,6 +30,8 @@ class GroupInvitationRequest:
28
30
  auto_create_project: Union[Unset, bool] = UNSET
29
31
  project_name_template: Union[None, Unset, str] = UNSET
30
32
  project_role: Union[None, UUID, Unset] = UNSET
33
+ user_affiliations: Union[Unset, Any] = UNSET
34
+ user_email_patterns: Union[Unset, Any] = UNSET
31
35
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
32
36
 
33
37
  def to_dict(self) -> dict[str, Any]:
@@ -51,6 +55,10 @@ class GroupInvitationRequest:
51
55
  else:
52
56
  project_role = self.project_role
53
57
 
58
+ user_affiliations = self.user_affiliations
59
+
60
+ user_email_patterns = self.user_email_patterns
61
+
54
62
  field_dict: dict[str, Any] = {}
55
63
  field_dict.update(self.additional_properties)
56
64
  field_dict.update(
@@ -65,6 +73,10 @@ class GroupInvitationRequest:
65
73
  field_dict["project_name_template"] = project_name_template
66
74
  if project_role is not UNSET:
67
75
  field_dict["project_role"] = project_role
76
+ if user_affiliations is not UNSET:
77
+ field_dict["user_affiliations"] = user_affiliations
78
+ if user_email_patterns is not UNSET:
79
+ field_dict["user_email_patterns"] = user_email_patterns
68
80
 
69
81
  return field_dict
70
82
 
@@ -103,12 +115,18 @@ class GroupInvitationRequest:
103
115
 
104
116
  project_role = _parse_project_role(d.pop("project_role", UNSET))
105
117
 
118
+ user_affiliations = d.pop("user_affiliations", UNSET)
119
+
120
+ user_email_patterns = d.pop("user_email_patterns", UNSET)
121
+
106
122
  group_invitation_request = cls(
107
123
  role=role,
108
124
  scope=scope,
109
125
  auto_create_project=auto_create_project,
110
126
  project_name_template=project_name_template,
111
127
  project_role=project_role,
128
+ user_affiliations=user_affiliations,
129
+ user_email_patterns=user_email_patterns,
112
130
  )
113
131
 
114
132
  group_invitation_request.additional_properties = d
@@ -0,0 +1,11 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ImpactLevelDisplayEnum(str, Enum):
5
+ DEGRADED_PERFORMANCE = "Degraded performance"
6
+ FULL_OUTAGE = "Full outage"
7
+ NO_IMPACT = "No impact"
8
+ PARTIAL_OUTAGE = "Partial outage"
9
+
10
+ def __str__(self) -> str:
11
+ return str(self.value)
@@ -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 Any, TypeVar, Union, cast
4
4
  from uuid import UUID
5
5
 
6
6
  from attrs import define as _attrs_define
@@ -20,7 +20,7 @@ class Invitation:
20
20
  Attributes:
21
21
  scope_uuid (UUID):
22
22
  scope_name (str):
23
- scope_type (str):
23
+ scope_type (Union[None, str]):
24
24
  customer_uuid (UUID):
25
25
  customer_name (str):
26
26
  role_name (str):
@@ -49,7 +49,7 @@ class Invitation:
49
49
 
50
50
  scope_uuid: UUID
51
51
  scope_name: str
52
- scope_type: str
52
+ scope_type: Union[None, str]
53
53
  customer_uuid: UUID
54
54
  customer_name: str
55
55
  role_name: str
@@ -79,6 +79,7 @@ class Invitation:
79
79
 
80
80
  scope_name = self.scope_name
81
81
 
82
+ scope_type: Union[None, str]
82
83
  scope_type = self.scope_type
83
84
 
84
85
  customer_uuid = str(self.customer_uuid)
@@ -173,7 +174,12 @@ class Invitation:
173
174
 
174
175
  scope_name = d.pop("scope_name")
175
176
 
176
- scope_type = d.pop("scope_type")
177
+ def _parse_scope_type(data: object) -> Union[None, str]:
178
+ if data is None:
179
+ return data
180
+ return cast(Union[None, str], data)
181
+
182
+ scope_type = _parse_scope_type(d.pop("scope_type"))
177
183
 
178
184
  customer_uuid = UUID(d.pop("customer_uuid"))
179
185
 
@@ -33,6 +33,7 @@ class MaintenanceAnnouncement:
33
33
  service_provider (str): Service provider announcing the maintenance
34
34
  created_by (Union[None, str]):
35
35
  affected_offerings (list['MaintenanceAnnouncementOffering']):
36
+ service_provider_name (str):
36
37
  message (Union[Unset, str]):
37
38
  maintenance_type (Union[Unset, MaintenanceTypeEnum]):
38
39
  """
@@ -48,6 +49,7 @@ class MaintenanceAnnouncement:
48
49
  service_provider: str
49
50
  created_by: Union[None, str]
50
51
  affected_offerings: list["MaintenanceAnnouncementOffering"]
52
+ service_provider_name: str
51
53
  message: Union[Unset, str] = UNSET
52
54
  maintenance_type: Union[Unset, MaintenanceTypeEnum] = UNSET
53
55
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -87,6 +89,8 @@ class MaintenanceAnnouncement:
87
89
  affected_offerings_item = affected_offerings_item_data.to_dict()
88
90
  affected_offerings.append(affected_offerings_item)
89
91
 
92
+ service_provider_name = self.service_provider_name
93
+
90
94
  message = self.message
91
95
 
92
96
  maintenance_type: Union[Unset, int] = UNSET
@@ -108,6 +112,7 @@ class MaintenanceAnnouncement:
108
112
  "service_provider": service_provider,
109
113
  "created_by": created_by,
110
114
  "affected_offerings": affected_offerings,
115
+ "service_provider_name": service_provider_name,
111
116
  }
112
117
  )
113
118
  if message is not UNSET:
@@ -180,6 +185,8 @@ class MaintenanceAnnouncement:
180
185
 
181
186
  affected_offerings.append(affected_offerings_item)
182
187
 
188
+ service_provider_name = d.pop("service_provider_name")
189
+
183
190
  message = d.pop("message", UNSET)
184
191
 
185
192
  _maintenance_type = d.pop("maintenance_type", UNSET)
@@ -201,6 +208,7 @@ class MaintenanceAnnouncement:
201
208
  service_provider=service_provider,
202
209
  created_by=created_by,
203
210
  affected_offerings=affected_offerings,
211
+ service_provider_name=service_provider_name,
204
212
  message=message,
205
213
  maintenance_type=maintenance_type,
206
214
  )
@@ -5,6 +5,7 @@ from uuid import UUID
5
5
  from attrs import define as _attrs_define
6
6
  from attrs import field as _attrs_field
7
7
 
8
+ from ..models.impact_level_display_enum import ImpactLevelDisplayEnum
8
9
  from ..models.impact_level_enum import ImpactLevelEnum
9
10
  from ..types import UNSET, Unset
10
11
 
@@ -19,6 +20,8 @@ class MaintenanceAnnouncementOffering:
19
20
  uuid (UUID):
20
21
  maintenance (str):
21
22
  offering (str):
23
+ impact_level_display (ImpactLevelDisplayEnum):
24
+ offering_name (str):
22
25
  impact_level (Union[Unset, ImpactLevelEnum]):
23
26
  impact_description (Union[Unset, str]): Specific description of how this offering will be affected
24
27
  """
@@ -27,6 +30,8 @@ class MaintenanceAnnouncementOffering:
27
30
  uuid: UUID
28
31
  maintenance: str
29
32
  offering: str
33
+ impact_level_display: ImpactLevelDisplayEnum
34
+ offering_name: str
30
35
  impact_level: Union[Unset, ImpactLevelEnum] = UNSET
31
36
  impact_description: Union[Unset, str] = UNSET
32
37
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -40,6 +45,10 @@ class MaintenanceAnnouncementOffering:
40
45
 
41
46
  offering = self.offering
42
47
 
48
+ impact_level_display = self.impact_level_display.value
49
+
50
+ offering_name = self.offering_name
51
+
43
52
  impact_level: Union[Unset, int] = UNSET
44
53
  if not isinstance(self.impact_level, Unset):
45
54
  impact_level = self.impact_level.value
@@ -54,6 +63,8 @@ class MaintenanceAnnouncementOffering:
54
63
  "uuid": uuid,
55
64
  "maintenance": maintenance,
56
65
  "offering": offering,
66
+ "impact_level_display": impact_level_display,
67
+ "offering_name": offering_name,
57
68
  }
58
69
  )
59
70
  if impact_level is not UNSET:
@@ -74,6 +85,10 @@ class MaintenanceAnnouncementOffering:
74
85
 
75
86
  offering = d.pop("offering")
76
87
 
88
+ impact_level_display = ImpactLevelDisplayEnum(d.pop("impact_level_display"))
89
+
90
+ offering_name = d.pop("offering_name")
91
+
77
92
  _impact_level = d.pop("impact_level", UNSET)
78
93
  impact_level: Union[Unset, ImpactLevelEnum]
79
94
  if isinstance(_impact_level, Unset):
@@ -88,6 +103,8 @@ class MaintenanceAnnouncementOffering:
88
103
  uuid=uuid,
89
104
  maintenance=maintenance,
90
105
  offering=offering,
106
+ impact_level_display=impact_level_display,
107
+ offering_name=offering_name,
91
108
  impact_level=impact_level,
92
109
  impact_description=impact_description,
93
110
  )
@@ -1,12 +1,12 @@
1
- from enum import IntEnum
1
+ from enum import Enum
2
2
 
3
3
 
4
- class MaintenanceAnnouncementStateEnum(IntEnum):
5
- VALUE_1 = 1
6
- VALUE_2 = 2
7
- VALUE_3 = 3
8
- VALUE_4 = 4
9
- VALUE_5 = 5
4
+ class MaintenanceAnnouncementStateEnum(str, Enum):
5
+ CANCELLED = "Cancelled"
6
+ COMPLETED = "Completed"
7
+ DRAFT = "Draft"
8
+ IN_PROGRESS = "In progress"
9
+ SCHEDULED = "Scheduled"
10
10
 
11
11
  def __str__(self) -> str:
12
12
  return str(self.value)
@@ -10,6 +10,8 @@ class MarketplaceOfferingUsersListFieldItem(str, Enum):
10
10
  OFFERING = "offering"
11
11
  OFFERING_NAME = "offering_name"
12
12
  OFFERING_UUID = "offering_uuid"
13
+ SERVICE_PROVIDER_COMMENT = "service_provider_comment"
14
+ STATE = "state"
13
15
  URL = "url"
14
16
  USER = "user"
15
17
  USERNAME = "username"
@@ -0,0 +1,16 @@
1
+ from enum import Enum
2
+
3
+
4
+ class MarketplaceOfferingUsersListStateItem(str, Enum):
5
+ CREATING = "Creating"
6
+ DELETED = "Deleted"
7
+ DELETING = "Deleting"
8
+ ERROR = "Error"
9
+ OK = "OK"
10
+ PENDING_ACCOUNT_LINKING = "Pending account linking"
11
+ PENDING_ADDITIONAL_VALIDATION = "Pending additional validation"
12
+ REQUESTED = "Requested"
13
+ REQUESTED_DELETION = "Requested deletion"
14
+
15
+ def __str__(self) -> str:
16
+ return str(self.value)
@@ -10,6 +10,8 @@ class MarketplaceOfferingUsersRetrieveFieldItem(str, Enum):
10
10
  OFFERING = "offering"
11
11
  OFFERING_NAME = "offering_name"
12
12
  OFFERING_UUID = "offering_uuid"
13
+ SERVICE_PROVIDER_COMMENT = "service_provider_comment"
14
+ STATE = "state"
13
15
  URL = "url"
14
16
  USER = "user"
15
17
  USERNAME = "username"
@@ -7,6 +7,7 @@ from attrs import define as _attrs_define
7
7
  from attrs import field as _attrs_field
8
8
  from dateutil.parser import isoparse
9
9
 
10
+ from ..models.offering_user_state_enum import OfferingUserStateEnum
10
11
  from ..types import UNSET, Unset
11
12
 
12
13
  T = TypeVar("T", bound="OfferingUser")
@@ -32,6 +33,9 @@ class OfferingUser:
32
33
  customer_uuid (Union[Unset, UUID]):
33
34
  customer_name (Union[Unset, str]):
34
35
  is_restricted (Union[Unset, bool]): Signal to service if the user account is restricted or not
36
+ state (Union[Unset, OfferingUserStateEnum]):
37
+ service_provider_comment (Union[Unset, str]): Additional comment for pending states like validation or account
38
+ linking
35
39
  """
36
40
 
37
41
  url: Union[Unset, str] = UNSET
@@ -49,6 +53,8 @@ class OfferingUser:
49
53
  customer_uuid: Union[Unset, UUID] = UNSET
50
54
  customer_name: Union[Unset, str] = UNSET
51
55
  is_restricted: Union[Unset, bool] = UNSET
56
+ state: Union[Unset, OfferingUserStateEnum] = UNSET
57
+ service_provider_comment: Union[Unset, str] = UNSET
52
58
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
53
59
 
54
60
  def to_dict(self) -> dict[str, Any]:
@@ -98,6 +104,12 @@ class OfferingUser:
98
104
 
99
105
  is_restricted = self.is_restricted
100
106
 
107
+ state: Union[Unset, str] = UNSET
108
+ if not isinstance(self.state, Unset):
109
+ state = self.state.value
110
+
111
+ service_provider_comment = self.service_provider_comment
112
+
101
113
  field_dict: dict[str, Any] = {}
102
114
  field_dict.update(self.additional_properties)
103
115
  field_dict.update({})
@@ -131,6 +143,10 @@ class OfferingUser:
131
143
  field_dict["customer_name"] = customer_name
132
144
  if is_restricted is not UNSET:
133
145
  field_dict["is_restricted"] = is_restricted
146
+ if state is not UNSET:
147
+ field_dict["state"] = state
148
+ if service_provider_comment is not UNSET:
149
+ field_dict["service_provider_comment"] = service_provider_comment
134
150
 
135
151
  return field_dict
136
152
 
@@ -204,6 +220,15 @@ class OfferingUser:
204
220
 
205
221
  is_restricted = d.pop("is_restricted", UNSET)
206
222
 
223
+ _state = d.pop("state", UNSET)
224
+ state: Union[Unset, OfferingUserStateEnum]
225
+ if isinstance(_state, Unset):
226
+ state = UNSET
227
+ else:
228
+ state = OfferingUserStateEnum(_state)
229
+
230
+ service_provider_comment = d.pop("service_provider_comment", UNSET)
231
+
207
232
  offering_user = cls(
208
233
  url=url,
209
234
  uuid=uuid,
@@ -220,6 +245,8 @@ class OfferingUser:
220
245
  customer_uuid=customer_uuid,
221
246
  customer_name=customer_name,
222
247
  is_restricted=is_restricted,
248
+ state=state,
249
+ service_provider_comment=service_provider_comment,
223
250
  )
224
251
 
225
252
  offering_user.additional_properties = d
@@ -0,0 +1,16 @@
1
+ from enum import Enum
2
+
3
+
4
+ class OfferingUserStateEnum(str, Enum):
5
+ CREATING = "Creating"
6
+ DELETED = "Deleted"
7
+ DELETING = "Deleting"
8
+ ERROR = "Error"
9
+ OK = "OK"
10
+ PENDING_ACCOUNT_LINKING = "Pending account linking"
11
+ PENDING_ADDITIONAL_VALIDATION = "Pending additional validation"
12
+ REQUESTED = "Requested"
13
+ REQUESTED_DELETION = "Requested deletion"
14
+
15
+ def __str__(self) -> str:
16
+ return str(self.value)
@@ -0,0 +1,59 @@
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="OfferingUserStateTransitionRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class OfferingUserStateTransitionRequest:
14
+ """
15
+ Attributes:
16
+ comment (Union[Unset, str]):
17
+ """
18
+
19
+ comment: Union[Unset, str] = UNSET
20
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
21
+
22
+ def to_dict(self) -> dict[str, Any]:
23
+ comment = self.comment
24
+
25
+ field_dict: dict[str, Any] = {}
26
+ field_dict.update(self.additional_properties)
27
+ field_dict.update({})
28
+ if comment is not UNSET:
29
+ field_dict["comment"] = comment
30
+
31
+ return field_dict
32
+
33
+ @classmethod
34
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
35
+ d = dict(src_dict)
36
+ comment = d.pop("comment", UNSET)
37
+
38
+ offering_user_state_transition_request = cls(
39
+ comment=comment,
40
+ )
41
+
42
+ offering_user_state_transition_request.additional_properties = d
43
+ return offering_user_state_transition_request
44
+
45
+ @property
46
+ def additional_keys(self) -> list[str]:
47
+ return list(self.additional_properties.keys())
48
+
49
+ def __getitem__(self, key: str) -> Any:
50
+ return self.additional_properties[key]
51
+
52
+ def __setitem__(self, key: str, value: Any) -> None:
53
+ self.additional_properties[key] = value
54
+
55
+ def __delitem__(self, key: str) -> None:
56
+ del self.additional_properties[key]
57
+
58
+ def __contains__(self, key: str) -> bool:
59
+ return key in self.additional_properties
@@ -1,5 +1,5 @@
1
1
  from collections.abc import Mapping
2
- from typing import Any, TypeVar
2
+ from typing import Any, TypeVar, Union, cast
3
3
  from uuid import UUID
4
4
 
5
5
  from attrs import define as _attrs_define
@@ -17,7 +17,7 @@ class VisibleInvitationDetails:
17
17
  Attributes:
18
18
  scope_uuid (UUID):
19
19
  scope_name (str):
20
- scope_type (str):
20
+ scope_type (Union[None, str]):
21
21
  customer_uuid (UUID):
22
22
  customer_name (str):
23
23
  role_name (str):
@@ -33,7 +33,7 @@ class VisibleInvitationDetails:
33
33
 
34
34
  scope_uuid: UUID
35
35
  scope_name: str
36
- scope_type: str
36
+ scope_type: Union[None, str]
37
37
  customer_uuid: UUID
38
38
  customer_name: str
39
39
  role_name: str
@@ -51,6 +51,7 @@ class VisibleInvitationDetails:
51
51
 
52
52
  scope_name = self.scope_name
53
53
 
54
+ scope_type: Union[None, str]
54
55
  scope_type = self.scope_type
55
56
 
56
57
  customer_uuid = str(self.customer_uuid)
@@ -102,7 +103,12 @@ class VisibleInvitationDetails:
102
103
 
103
104
  scope_name = d.pop("scope_name")
104
105
 
105
- scope_type = d.pop("scope_type")
106
+ def _parse_scope_type(data: object) -> Union[None, str]:
107
+ if data is None:
108
+ return data
109
+ return cast(Union[None, str], data)
110
+
111
+ scope_type = _parse_scope_type(d.pop("scope_type"))
106
112
 
107
113
  customer_uuid = UUID(d.pop("customer_uuid"))
108
114
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: waldur-api-client
3
- Version: 7.7.2
3
+ Version: 7.7.3
4
4
  Summary: A client library for accessing Waldur API
5
5
  License: MIT
6
6
  Author: OpenNode Team
@@ -547,9 +547,12 @@ waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_
547
547
  waldur_api_client/api/marketplace_offering_users/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
548
548
  waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_create.py,sha256=0n1hKPM7GPke5kA-HelvDoKGet5Tm0Wi8zn-AhaQDJg,3468
549
549
  waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_destroy.py,sha256=YR464jEe4fegrBrNLECQ5c8qFoquPgsbGJDjSAqsQ1A,2060
550
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py,sha256=7GYkYWYfX1OZnoZ_46uKKvWmSWtDdDVLF63BjbAl0mA,13506
550
+ waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py,sha256=Q4fxtitKTBTawQB1yNwGUwPV_Nrfa2JQG77b-aQUT2E,14658
551
551
  waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_partial_update.py,sha256=0SjH9EM5o6dbkEwcOhUhmce_RW3yUpISQWnHT36K0wQ,3821
552
552
  waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_retrieve.py,sha256=y9mVwr2zd5qZC_tgJij111d6srU2V8pIX9Fj0NTR-4U,4496
553
+ waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_set_pending_account_linking.py,sha256=7IH_Ty6jkbz82fpc_OyUG1HCiubboLaaD0__QTHKG3M,2622
554
+ waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_set_pending_additional_validation.py,sha256=8P8P-MqldTeSryhVNZRdSptwoQG7A9p3TWDfFYcUzUk,2628
555
+ waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_set_validation_complete.py,sha256=sj6PwgjzVX_3lbnMYq_B4_iiFM01jXcKJpL5erSF2Bo,2511
553
556
  waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_update.py,sha256=cWE0jvT9c0fK_cR0S6IHYy9NNhJOot41fPXwzh-LFns,3741
554
557
  waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_update_restricted.py,sha256=W49dIwHcSZR97pQ4qAEZicckNnYGo6CLfDO3HNcBDWw,2626
555
558
  waldur_api_client/api/marketplace_orders/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
@@ -1478,7 +1481,7 @@ waldur_api_client/api/vmware_virtual_machine/vmware_virtual_machine_update.py,sh
1478
1481
  waldur_api_client/api/vmware_virtual_machine/vmware_virtual_machine_web_console_retrieve.py,sha256=oZ2BaWmW_KX9J6iL90lKg2lNcX4ym-VdVp0v9zDZI0I,3342
1479
1482
  waldur_api_client/client.py,sha256=GLq-qDZKHfSA_9duhz0MTPeaAkXUlvuHHWCRzsPcE5Y,11727
1480
1483
  waldur_api_client/errors.py,sha256=C44oS7G-xUfc6i6fto367Oig5qm0S_pDZJUaK0eY9mU,500
1481
- waldur_api_client/models/__init__.py,sha256=CyJLzLrg06WroJ8GTv3ROVmrDsCi-54MSEh5K6ZyWmY,124908
1484
+ waldur_api_client/models/__init__.py,sha256=6w-sS8adgW1qRqr2ZVblistZFlyZasoOkS5YMo2TK0w,125357
1482
1485
  waldur_api_client/models/access_subnet.py,sha256=unDj1xpRJWj9Ia51twedRU9HcuWf4MYVnTCz-WGLTJk,2145
1483
1486
  waldur_api_client/models/access_subnet_request.py,sha256=_OM-mgOmhOnbwqR9425rgdN-KWUxvz2ZgK20rGTeTrA,2005
1484
1487
  waldur_api_client/models/account_name_generation_policy_enum.py,sha256=6XEL8dm2iWT-1ZmVf0RNbI7pmszVe1s7_Z24yPgs_K8,170
@@ -1745,7 +1748,7 @@ waldur_api_client/models/event_stats.py,sha256=DsvRRKBSmyvyDRGCO5cxnLQaWwImv1-RL
1745
1748
  waldur_api_client/models/event_subscription.py,sha256=d1FPQWgwLmUH4tXr8ee5nwfDFTcnwzeBI6gZEVDu1o0,4225
1746
1749
  waldur_api_client/models/event_subscription_request.py,sha256=886_Gtrm-jaDc_465PQiO3gg3je7kfPb8lRNz2VPND4,2047
1747
1750
  waldur_api_client/models/event_subscriptions_list_o_item.py,sha256=y3QD9iti1tT-H4FJehhGeuOcE6WbO0BaBjAy7xyJjX0,181
1748
- waldur_api_client/models/event_types_enum.py,sha256=2QhUWZsc_pfjBUV6U-d46o40VBjb6nqNfM_xvFpOIRc,16823
1751
+ waldur_api_client/models/event_types_enum.py,sha256=wAMm4RbsUkn4--DZNxzpZ7SMPOKlePvgfetjXIR2B9U,16899
1749
1752
  waldur_api_client/models/events_count_retrieve_field_item.py,sha256=VG8asqy9I_s1wKHHfubLLc1kAQTjeCEstGGfIzamZgE,253
1750
1753
  waldur_api_client/models/events_event_groups_retrieve_field_item.py,sha256=dYixnwJi5wKAtg-2zvG288vkGpMYBsm2mkjfQEuO_Ik,259
1751
1754
  waldur_api_client/models/events_list_field_item.py,sha256=Xg3Ky71jUYdKi7bLIqolLQYl7SVT5JqTjBjHHY1Unew,244
@@ -1767,8 +1770,8 @@ waldur_api_client/models/google_auth_list_field_item.py,sha256=-W0Di6d6ddjiXDAnh
1767
1770
  waldur_api_client/models/google_auth_retrieve_field_item.py,sha256=5hAZpjGGs7SiyL6XDeaH5blpRffJ5cWNDN5e0r5i9D4,776
1768
1771
  waldur_api_client/models/google_calendar.py,sha256=Eu1yPilxvb5q0OZuhGa5cIxh-dC3s8IWdpjaLkkjDrY,2563
1769
1772
  waldur_api_client/models/google_credentials.py,sha256=YhA0kBb-IzD0yIoJuLAkl3hblXYfOrvXmXLtwEWKq2Q,9267
1770
- waldur_api_client/models/group_invitation.py,sha256=a7o3yJTjQhVAvBECm_7vfmCDgvtn6-3hZuo6MBwBttQ,7235
1771
- waldur_api_client/models/group_invitation_request.py,sha256=-PpwVLDzkhKMoZT0xpGa3OC7VZbq65hNTTo2ZZIVy1g,4290
1773
+ waldur_api_client/models/group_invitation.py,sha256=juEDJNYUbZyOKxKP7pGxkiJldtk6fUEe1TU8yv0ZKXE,8244
1774
+ waldur_api_client/models/group_invitation_request.py,sha256=7CbuLGby1ngajgOxmNoMreoGgDZyjRSXC1yccDhgWSQ,5046
1772
1775
  waldur_api_client/models/guest_os_enum.py,sha256=Xq1NMZXuuon1ZesMWJuSsnRW1VqHl9zeum-LFXfI5Bs,4702
1773
1776
  waldur_api_client/models/guest_power_state_enum.py,sha256=xY6nEbX2p-J0q3sQ6PWXNa8THVnkAmgZ9pfwS_dMnaE,300
1774
1777
  waldur_api_client/models/hooks_web_list_content_type.py,sha256=pUYOptxC4dcPKZcyhPX3oFPMLgQxFeC8MF4ktQNTzBc,161
@@ -1777,13 +1780,14 @@ waldur_api_client/models/identity_provider_request.py,sha256=vRW-WeLSeH495CsQovJ
1777
1780
  waldur_api_client/models/image_create_request.py,sha256=xHG5U8AgHSNSAJuDMf3BUlpRLA0KW-OO7mQOvD1t7aY,4356
1778
1781
  waldur_api_client/models/image_create_response.py,sha256=hSTJL8g4pSYXpP9fBhufZoTTDh-Zubjhg3F2zh7oQdo,2064
1779
1782
  waldur_api_client/models/image_upload_response.py,sha256=3lj84P8NzA00D6NQMYGTKTVaC3pfEDJK_-wGOLgpQFU,1673
1783
+ waldur_api_client/models/impact_level_display_enum.py,sha256=sF0qoI3Rp2vQncS1rvW2GdvLhDFnfH4RKG5KGI24VqU,275
1780
1784
  waldur_api_client/models/impact_level_enum.py,sha256=9zGNMgukh2xEWZR52KeXICqCdwtOV1bS1pqRiMYpC0s,185
1781
1785
  waldur_api_client/models/import_resource_request.py,sha256=S-EBZ8fqATOJAa6_tgjqSGums-EIdD3PAraGYMHPZgw,2260
1782
1786
  waldur_api_client/models/importable_resource.py,sha256=Gufpmtymf6opPRjBImIeif32VHBPAAqgOZLT15U4ctM,2039
1783
1787
  waldur_api_client/models/instance_flavor_change_request.py,sha256=-DqVP2gzl8jO23ETCyOP1R6MoEEmf1gR_0tAhXPpctE,1543
1784
1788
  waldur_api_client/models/integration_status.py,sha256=q7Xidrl3tZG8keEQKFG98bQU8VqkWPV4fYNnUxBMtzw,3310
1785
1789
  waldur_api_client/models/integration_status_details.py,sha256=NeogZdTaU7qlP8c8OJhaWZoEhD6HdMFKKBLghA323A8,3014
1786
- waldur_api_client/models/invitation.py,sha256=D0vSw1c8lYukSWTPH8QQhDKl-Xxcx4YCBXI3OBA31ko,7903
1790
+ waldur_api_client/models/invitation.py,sha256=GNLgoetSeYeUB9mTomtvP0xVZoMv37ydSHE6pqbAvtA,8162
1787
1791
  waldur_api_client/models/invitation_check.py,sha256=QeKjpsHAnq4B7txgtOj7PrwrdH8RO1DpfMBulUTgaC8,1921
1788
1792
  waldur_api_client/models/invitation_request.py,sha256=1XElBd5iXnNu8ujMnG2R9FscZ_rE1188vPcS5Ll1nsI,4275
1789
1793
  waldur_api_client/models/invitation_state.py,sha256=b_hGZcRGmYBuSyCKJ6rk3PUL-gLc-bfFZRfgR19QjAk,298
@@ -1844,13 +1848,13 @@ waldur_api_client/models/link_openstack_request.py,sha256=yvYtHcmJqBTT5HkHzQN6Kn
1844
1848
  waldur_api_client/models/link_to_invoice.py,sha256=6SCGvQQEpy3s043vRntS7_vl60kc8bSQwMrGgO42opA,1480
1845
1849
  waldur_api_client/models/link_to_invoice_request.py,sha256=H0lTJwGuLFbcUip34pecMQ9tx3kccchGnpt81jvIgok,1518
1846
1850
  waldur_api_client/models/logout.py,sha256=CJnzoxZkv_uMdiY_U5we9NeTS8SwjtuAit8PEI_mXUs,1469
1847
- waldur_api_client/models/maintenance_announcement.py,sha256=DyktGfYDGTqv67i0NnUODTx90x8Dn2qQ-zh-HoglHcU,7676
1848
- waldur_api_client/models/maintenance_announcement_offering.py,sha256=F5FuPzU41ySQ6FINhJ3HSGR0jBzSK10_Z52EtHFK5z4,3287
1851
+ waldur_api_client/models/maintenance_announcement.py,sha256=5naDjMw3bWx0qQ3k8hZEcEuB9rhn9RMCz6ArQTpjsX4,7989
1852
+ waldur_api_client/models/maintenance_announcement_offering.py,sha256=S4vVnplIGNtfgvZkX4iWhDt9DycqQsTFzI88J3mHeG0,3961
1849
1853
  waldur_api_client/models/maintenance_announcement_offering_request.py,sha256=JklXfrM6kYtcNmP2hkKmnCIkaxcd2GVX4pBnNzes_AE,3014
1850
1854
  waldur_api_client/models/maintenance_announcement_offering_template.py,sha256=5VUcjEmsmEYDCq5Xt9MxTr-0iiH4kF9z5uWyArtNBmo,3420
1851
1855
  waldur_api_client/models/maintenance_announcement_offering_template_request.py,sha256=r6CRRYS_CgJ9kDS1ybmjBMmAM6ZPIqYDFM9q6jcc2Ck,3147
1852
1856
  waldur_api_client/models/maintenance_announcement_request.py,sha256=vLTUo8S3DvhJ0XZZllJhUakdPB-PM3un--AUtFdbSUI,3669
1853
- waldur_api_client/models/maintenance_announcement_state_enum.py,sha256=ohHE2Yd8OeQxFfVjAhZXHvGQdXTECKfBSkUMH_h0bbA,218
1857
+ waldur_api_client/models/maintenance_announcement_state_enum.py,sha256=oW5DrwbX4QCYbARu8tjFvmaOEDtnFb8chGBZBntgb0c,273
1854
1858
  waldur_api_client/models/maintenance_announcement_template.py,sha256=2sssme77G7A2RBaovhkBM53TGMKq0oWypG7Q1WoYUcw,4294
1855
1859
  waldur_api_client/models/maintenance_announcement_template_request.py,sha256=vJ8MLnLzG4Ck4IZiW2dcdJxw48kq8iOPLSI92qGilpA,2984
1856
1860
  waldur_api_client/models/maintenance_type_enum.py,sha256=bsSN1wBR177iSIUaUEu-_iDlf3UuYJUUosA2-irtEHA,205
@@ -1881,9 +1885,10 @@ waldur_api_client/models/marketplace_offering_files_retrieve_field_item.py,sha25
1881
1885
  waldur_api_client/models/marketplace_offering_permissions_list_o_item.py,sha256=G-Oebm_wb2PxwgOKkam-r1gNdLeUdkSpVq0Lk0lltsY,517
1882
1886
  waldur_api_client/models/marketplace_offering_permissions_log_list_o_item.py,sha256=Isfpdz7Az8CREK5_qy8uOtlhGm1pGU1Wv__bk84t1oY,520
1883
1887
  waldur_api_client/models/marketplace_offering_referrals_list_o_item.py,sha256=r3xz2GIMJzJyh0hC49YDLUHoeBusZZ1oh6E-otXXs_8,331
1884
- waldur_api_client/models/marketplace_offering_users_list_field_item.py,sha256=jHF6WURRi8fXtXvtM7JqcCWEmLYKU7FCQWN5Q29m3Gc,578
1888
+ waldur_api_client/models/marketplace_offering_users_list_field_item.py,sha256=WXt2VR8IZ3SGhvfqLoFaR0rueRMQP1LQbHsWmW4I3Gg,656
1885
1889
  waldur_api_client/models/marketplace_offering_users_list_o_item.py,sha256=yV9tTNOgjQJykUU-Ujx8iTtDeILktuwfX0Ko_l5nQZw,291
1886
- waldur_api_client/models/marketplace_offering_users_retrieve_field_item.py,sha256=Z5Vi53l4tNI8lngHbs-Cp8_qFdWjScYJjEWVtP5ohhU,582
1890
+ waldur_api_client/models/marketplace_offering_users_list_state_item.py,sha256=IF8gFZfJV3Gx1eBX0i5_EiaWlWxHv6klVNvNIDnI_LQ,450
1891
+ waldur_api_client/models/marketplace_offering_users_retrieve_field_item.py,sha256=OxvRQvHW_J_9rteYzvoMqTzzwxKgZaqksbm9nByopFg,660
1887
1892
  waldur_api_client/models/marketplace_orders_list_field_item.py,sha256=AJ1_LEsj5zmhPifo9KOvxfjhaOdQaqY1_L64PQZ8_BU,2789
1888
1893
  waldur_api_client/models/marketplace_orders_list_o_item.py,sha256=J8BXuVNPKH788swm6gPgaih5m5scbagGKtrYbqDIT2M,351
1889
1894
  waldur_api_client/models/marketplace_orders_list_state_item.py,sha256=2WvjJmJ5SVVvr_9-Z-yXLyWOUFhMcFdskp7EWEHDUZM,377
@@ -2049,10 +2054,12 @@ waldur_api_client/models/offering_stats_counter.py,sha256=fH_bPk1csgDoqqSvGY69nP
2049
2054
  waldur_api_client/models/offering_thumbnail_request.py,sha256=m0xiFJypMK61CyfgCrCj4K4N8nwNc8rIdrf5KLWMO4g,1640
2050
2055
  waldur_api_client/models/offering_usage_policy.py,sha256=pndAjiQXlg2alc1SHtQza339pd9SPn8BButRbOQvS0A,6284
2051
2056
  waldur_api_client/models/offering_usage_policy_request.py,sha256=kPpIJqi3OTRsoeXlU3YG0-Ej1cEYxEyDOd_szsFZZnc,4070
2052
- waldur_api_client/models/offering_user.py,sha256=kIp3N8XI7aIKKR5jkYOjhwqUF_FMHsL3anjYgEhiVM0,7965
2057
+ waldur_api_client/models/offering_user.py,sha256=6RcF_OQEFEJbkau5ha8YVJyYldUOgT5zrlXqMUYz6WE,9110
2053
2058
  waldur_api_client/models/offering_user_request.py,sha256=bNXYjsbz8eBsCq5S3adA3uNSediPcP4xZbFEyPcJxA0,3719
2054
2059
  waldur_api_client/models/offering_user_role.py,sha256=iGggr1bKR3QVjVb3vikVD8E7TQ6sHNSXm-EB3WOer2A,2305
2055
2060
  waldur_api_client/models/offering_user_role_request.py,sha256=gziXK-_xx8EDrLCem7HjqROGYc05gLedAp1BnSAUpuE,1686
2061
+ waldur_api_client/models/offering_user_state_enum.py,sha256=x1mFLnUr5PlIj8U_PDh1c1vNK6GhROduIo4-uac27Tw,434
2062
+ waldur_api_client/models/offering_user_state_transition_request.py,sha256=rM_bk-8OnlGyAG6_B4AKzw4h5RN8uK58gpwh3dXrsNI,1681
2056
2063
  waldur_api_client/models/offering_user_update_restriction_request.py,sha256=i1E_fhDbR1GNox85eqFiOkXrq9FPlFohhHKtAroORo0,1663
2057
2064
  waldur_api_client/models/open_stack_allowed_address_pair.py,sha256=ZrD8isGPnSP6Py4yIkkORgFrLXzPtDbi0ORJGzHhzOE,1690
2058
2065
  waldur_api_client/models/open_stack_allowed_address_pair_request.py,sha256=ICpra2f6jynTuHx4_fuqkvg3tmno1rSe-O-_LhVawlA,2059
@@ -2668,7 +2675,7 @@ waldur_api_client/models/users_me_retrieve_field_item.py,sha256=4yPYQ2iwrBM5giVK
2668
2675
  waldur_api_client/models/users_retrieve_field_item.py,sha256=I32sRub95zyo-UKumqREIGyFsGaDIAEcOy40MzvqBk8,1403
2669
2676
  waldur_api_client/models/version.py,sha256=wbfCnGfJBAgOUQVg5A0klxoh2IeRtxYWXHVxo1w5Uco,1916
2670
2677
  waldur_api_client/models/visibility_enum.py,sha256=UzMf75zH9i4B2ueP8lgUbS1kEaKb9xEBfmVfWhJd2oc,165
2671
- waldur_api_client/models/visible_invitation_details.py,sha256=7xHnbsd_TIY6RQjauSJ6n90ygmGHP7A9lYXzSqRXeIA,4663
2678
+ waldur_api_client/models/visible_invitation_details.py,sha256=inxttvMO4laLMcoH8V7tt1eNcWRIqTw_Vk3UZPbjg8s,4929
2672
2679
  waldur_api_client/models/vmware_cluster.py,sha256=ychrJkzjCHeuzsWsKOLOG1IPzzTjccss0jOz1-EJdnM,1758
2673
2680
  waldur_api_client/models/vmware_datastore.py,sha256=AZr6Bo65mlGyeDxzeVxMpJP1SBPly0_3TkgAJPiEalg,3403
2674
2681
  waldur_api_client/models/vmware_disk.py,sha256=9aHMhkW7xBqZ5Z7DpMCm67j4bDRhLubAXWgu3oPo1-k,23069
@@ -2714,7 +2721,7 @@ waldur_api_client/models/webhook_event_enum.py,sha256=P8kLmYD2Z-EqFjfr489bholAay
2714
2721
  waldur_api_client/models/widget_enum.py,sha256=oC-BDHXc9GnUD3IhxVHMbhkYTdfpWLBcaUXjY__RERs,201
2715
2722
  waldur_api_client/py.typed,sha256=8ZJUsxZiuOy1oJeVhsTWQhTG_6pTVHVXk5hJL79ebTk,25
2716
2723
  waldur_api_client/types.py,sha256=AX4orxQZQJat3vZrgjJ-TYb2sNBL8kNo9yqYDT-n8y8,1391
2717
- waldur_api_client-7.7.2.dist-info/LICENSE,sha256=ggoC8v8nQf3HIDGLzIB6VMlzLScX8tIpNhFa0s8UYxw,1072
2718
- waldur_api_client-7.7.2.dist-info/METADATA,sha256=OM1mE-PzQDgZoB6S31opDdC9EfMAPmHNZ5UwrGAcmrQ,5845
2719
- waldur_api_client-7.7.2.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2720
- waldur_api_client-7.7.2.dist-info/RECORD,,
2724
+ waldur_api_client-7.7.3.dist-info/LICENSE,sha256=ggoC8v8nQf3HIDGLzIB6VMlzLScX8tIpNhFa0s8UYxw,1072
2725
+ waldur_api_client-7.7.3.dist-info/METADATA,sha256=ZJoPwllQSIsSIyrK1t3BnTgkjkNafaw6Ey1jeoVoLGM,5845
2726
+ waldur_api_client-7.7.3.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2727
+ waldur_api_client-7.7.3.dist-info/RECORD,,