waldur-api-client 7.7.7__py3-none-any.whl → 7.7.9__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 (140) hide show
  1. waldur_api_client/api/customer_permissions_reviews/customer_permissions_reviews_count.py +19 -0
  2. waldur_api_client/api/customer_permissions_reviews/customer_permissions_reviews_list.py +19 -0
  3. waldur_api_client/api/customers/customers_users_list.py +141 -53
  4. waldur_api_client/api/invoices/invoices_items_retrieve.py +20 -0
  5. waldur_api_client/api/managed_rancher_cluster_resources/__init__.py +1 -0
  6. waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_add_node.py +162 -0
  7. waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_count.py +172 -0
  8. waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_list.py +196 -0
  9. waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_retrieve.py +171 -0
  10. waldur_api_client/api/marketplace_course_accounts/__init__.py +1 -0
  11. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_count.py +244 -0
  12. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_create.py +148 -0
  13. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_create_bulk.py +152 -0
  14. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_destroy.py +89 -0
  15. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_list.py +245 -0
  16. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_retrieve.py +140 -0
  17. waldur_api_client/api/marketplace_customer_service_accounts/marketplace_customer_service_accounts_count.py +25 -0
  18. waldur_api_client/api/marketplace_customer_service_accounts/marketplace_customer_service_accounts_list.py +25 -0
  19. waldur_api_client/api/marketplace_project_service_accounts/marketplace_project_service_accounts_count.py +25 -0
  20. waldur_api_client/api/marketplace_project_service_accounts/marketplace_project_service_accounts_list.py +25 -0
  21. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_component_stats_list.py +30 -0
  22. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_costs_list.py +30 -0
  23. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_count.py +30 -0
  24. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_customers_list.py +30 -0
  25. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_count.py +30 -0
  26. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_list.py +30 -0
  27. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_list.py +30 -0
  28. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_count.py +30 -0
  29. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_list.py +30 -0
  30. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_course_accounts_list.py +284 -0
  31. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_offerings_list.py +30 -0
  32. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_project_service_accounts_list.py +29 -0
  33. waldur_api_client/api/project_permissions_reviews/__init__.py +1 -0
  34. waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_close.py +91 -0
  35. waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_count.py +266 -0
  36. waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_list.py +269 -0
  37. waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_retrieve.py +142 -0
  38. waldur_api_client/api/projects/projects_other_users_list.py +98 -23
  39. waldur_api_client/api/projects/projects_sync_user_roles.py +10 -9
  40. waldur_api_client/api/support_issue_statuses/__init__.py +1 -0
  41. waldur_api_client/api/support_issue_statuses/support_issue_statuses_count.py +172 -0
  42. waldur_api_client/api/support_issue_statuses/support_issue_statuses_create.py +148 -0
  43. waldur_api_client/api/support_issue_statuses/support_issue_statuses_destroy.py +89 -0
  44. waldur_api_client/api/support_issue_statuses/support_issue_statuses_list.py +173 -0
  45. waldur_api_client/api/support_issue_statuses/support_issue_statuses_partial_update.py +162 -0
  46. waldur_api_client/api/support_issue_statuses/support_issue_statuses_retrieve.py +140 -0
  47. waldur_api_client/api/support_issue_statuses/support_issue_statuses_update.py +162 -0
  48. waldur_api_client/api/user_group_invitations/user_group_invitations_submit_request.py +12 -12
  49. waldur_api_client/api/user_invitations/user_invitations_count.py +30 -0
  50. waldur_api_client/api/user_invitations/user_invitations_list.py +30 -0
  51. waldur_api_client/api/user_permission_requests/user_permission_requests_cancel_request.py +146 -0
  52. waldur_api_client/models/__init__.py +76 -2
  53. waldur_api_client/models/cancel_request_response.py +75 -0
  54. waldur_api_client/models/constance_settings.py +18 -0
  55. waldur_api_client/models/constance_settings_request.py +18 -0
  56. waldur_api_client/models/course_account.py +187 -0
  57. waldur_api_client/models/course_account_create_nested.py +68 -0
  58. waldur_api_client/models/course_account_create_nested_request.py +68 -0
  59. waldur_api_client/models/course_account_request.py +80 -0
  60. waldur_api_client/models/course_accounts_bulk_create.py +82 -0
  61. waldur_api_client/models/course_accounts_bulk_create_request.py +82 -0
  62. waldur_api_client/models/customer.py +9 -0
  63. waldur_api_client/models/customer_permission_review.py +16 -16
  64. waldur_api_client/models/customer_request.py +9 -0
  65. waldur_api_client/models/customer_service_account.py +9 -0
  66. waldur_api_client/models/customers_list_field_item.py +1 -0
  67. waldur_api_client/models/customers_retrieve_field_item.py +1 -0
  68. waldur_api_client/models/customers_users_list_o.py +9 -0
  69. waldur_api_client/models/customers_users_list_organization_role_item_type_0.py +10 -0
  70. waldur_api_client/models/customers_users_list_project_role_item_type_0.py +10 -0
  71. waldur_api_client/models/dependency_logic_operator_enum.py +9 -0
  72. waldur_api_client/models/event_subscription.py +1 -1
  73. waldur_api_client/models/event_types_enum.py +4 -0
  74. waldur_api_client/models/group_invitation.py +9 -0
  75. waldur_api_client/models/invitation.py +9 -0
  76. waldur_api_client/models/invoices_items_retrieve_o.py +15 -0
  77. waldur_api_client/models/issue_status.py +103 -0
  78. waldur_api_client/models/issue_status_request.py +78 -0
  79. waldur_api_client/models/issue_status_type_enum.py +9 -0
  80. waldur_api_client/models/kind_enum.py +10 -0
  81. waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +82 -0
  82. waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +82 -0
  83. waldur_api_client/models/managed_rancher_create_node_request.py +186 -0
  84. waldur_api_client/models/marketplace_course_accounts_count_state_item.py +10 -0
  85. waldur_api_client/models/marketplace_course_accounts_list_state_item.py +10 -0
  86. waldur_api_client/models/marketplace_customer_service_accounts_count_state_item.py +10 -0
  87. waldur_api_client/models/marketplace_customer_service_accounts_list_state_item.py +10 -0
  88. waldur_api_client/models/marketplace_project_service_accounts_count_state_item.py +10 -0
  89. waldur_api_client/models/marketplace_project_service_accounts_list_state_item.py +10 -0
  90. waldur_api_client/models/marketplace_service_providers_course_accounts_list_state_item.py +10 -0
  91. waldur_api_client/models/marketplace_service_providers_project_service_accounts_list_state_item.py +10 -0
  92. waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +1 -0
  93. waldur_api_client/models/nested_security_group_rule.py +223 -0
  94. waldur_api_client/models/{open_stack_nested_security_group_rules_item.py → nested_security_group_rule_request.py} +67 -76
  95. waldur_api_client/models/open_stack_backup_restoration_request.py +0 -22
  96. waldur_api_client/models/open_stack_fixed_ip.py +13 -3
  97. waldur_api_client/models/open_stack_fixed_ip_request.py +7 -2
  98. waldur_api_client/models/open_stack_instance_create_order_attributes.py +20 -20
  99. waldur_api_client/models/open_stack_nested_security_group.py +16 -16
  100. waldur_api_client/models/open_stack_port_ip_update_request.py +6 -2
  101. waldur_api_client/models/open_stack_static_route.py +13 -4
  102. waldur_api_client/models/open_stack_static_route_request.py +7 -3
  103. waldur_api_client/models/open_stack_sub_net.py +15 -2
  104. waldur_api_client/models/open_stack_sub_net_allocation_pool.py +27 -8
  105. waldur_api_client/models/open_stack_sub_net_allocation_pool_request.py +14 -5
  106. waldur_api_client/models/open_stack_sub_net_request.py +15 -2
  107. waldur_api_client/models/patched_customer_request.py +9 -0
  108. waldur_api_client/models/patched_issue_status_request.py +76 -0
  109. waldur_api_client/models/patched_open_stack_sub_net_request.py +15 -2
  110. waldur_api_client/models/patched_project_request.py +17 -0
  111. waldur_api_client/models/patched_question_admin_request.py +17 -0
  112. waldur_api_client/models/patched_rancher_service_request.py +1 -1
  113. waldur_api_client/models/permission_request.py +16 -0
  114. waldur_api_client/models/project.py +17 -0
  115. waldur_api_client/models/project_permission_review.py +166 -0
  116. waldur_api_client/models/project_permissions_reviews_count_o_item.py +11 -0
  117. waldur_api_client/models/project_permissions_reviews_list_o_item.py +11 -0
  118. waldur_api_client/models/project_request.py +17 -0
  119. waldur_api_client/models/project_service_account.py +9 -0
  120. waldur_api_client/models/projects_list_field_item.py +1 -0
  121. waldur_api_client/models/projects_other_users_list_o.py +9 -0
  122. waldur_api_client/models/projects_retrieve_field_item.py +1 -0
  123. waldur_api_client/models/proposal.py +8 -0
  124. waldur_api_client/models/proposal_review.py +8 -0
  125. waldur_api_client/models/question_admin.py +17 -0
  126. waldur_api_client/models/question_admin_request.py +17 -0
  127. waldur_api_client/models/rancher_nested_public_ip.py +25 -7
  128. waldur_api_client/models/rancher_service.py +1 -1
  129. waldur_api_client/models/rancher_service_request.py +1 -1
  130. waldur_api_client/models/rmq_connection.py +8 -3
  131. waldur_api_client/models/rmq_subscription.py +7 -3
  132. waldur_api_client/models/robot_account.py +16 -16
  133. waldur_api_client/models/robot_account_details.py +16 -16
  134. waldur_api_client/models/service_account_state.py +10 -0
  135. waldur_api_client/models/submit_request_response.py +75 -0
  136. waldur_api_client/models/visible_invitation_details.py +9 -0
  137. {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.9.dist-info}/METADATA +1 -1
  138. {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.9.dist-info}/RECORD +140 -78
  139. {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.9.dist-info}/LICENSE +0 -0
  140. {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.9.dist-info}/WHEEL +0 -0
@@ -18,22 +18,22 @@ class CustomerPermissionReview:
18
18
  uuid (UUID):
19
19
  reviewer_full_name (Union[None, str]):
20
20
  reviewer_uuid (Union[None, UUID]):
21
- customer_uuid (UUID):
22
- customer_name (str):
23
21
  is_pending (bool):
24
22
  created (datetime.datetime):
25
23
  closed (Union[None, datetime.datetime]):
24
+ customer_uuid (UUID):
25
+ customer_name (str):
26
26
  """
27
27
 
28
28
  url: str
29
29
  uuid: UUID
30
30
  reviewer_full_name: Union[None, str]
31
31
  reviewer_uuid: Union[None, UUID]
32
- customer_uuid: UUID
33
- customer_name: str
34
32
  is_pending: bool
35
33
  created: datetime.datetime
36
34
  closed: Union[None, datetime.datetime]
35
+ customer_uuid: UUID
36
+ customer_name: str
37
37
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
38
38
 
39
39
  def to_dict(self) -> dict[str, Any]:
@@ -50,10 +50,6 @@ class CustomerPermissionReview:
50
50
  else:
51
51
  reviewer_uuid = self.reviewer_uuid
52
52
 
53
- customer_uuid = str(self.customer_uuid)
54
-
55
- customer_name = self.customer_name
56
-
57
53
  is_pending = self.is_pending
58
54
 
59
55
  created = self.created.isoformat()
@@ -64,6 +60,10 @@ class CustomerPermissionReview:
64
60
  else:
65
61
  closed = self.closed
66
62
 
63
+ customer_uuid = str(self.customer_uuid)
64
+
65
+ customer_name = self.customer_name
66
+
67
67
  field_dict: dict[str, Any] = {}
68
68
  field_dict.update(self.additional_properties)
69
69
  field_dict.update(
@@ -72,11 +72,11 @@ class CustomerPermissionReview:
72
72
  "uuid": uuid,
73
73
  "reviewer_full_name": reviewer_full_name,
74
74
  "reviewer_uuid": reviewer_uuid,
75
- "customer_uuid": customer_uuid,
76
- "customer_name": customer_name,
77
75
  "is_pending": is_pending,
78
76
  "created": created,
79
77
  "closed": closed,
78
+ "customer_uuid": customer_uuid,
79
+ "customer_name": customer_name,
80
80
  }
81
81
  )
82
82
 
@@ -111,10 +111,6 @@ class CustomerPermissionReview:
111
111
 
112
112
  reviewer_uuid = _parse_reviewer_uuid(d.pop("reviewer_uuid"))
113
113
 
114
- customer_uuid = UUID(d.pop("customer_uuid"))
115
-
116
- customer_name = d.pop("customer_name")
117
-
118
114
  is_pending = d.pop("is_pending")
119
115
 
120
116
  created = isoparse(d.pop("created"))
@@ -134,16 +130,20 @@ class CustomerPermissionReview:
134
130
 
135
131
  closed = _parse_closed(d.pop("closed"))
136
132
 
133
+ customer_uuid = UUID(d.pop("customer_uuid"))
134
+
135
+ customer_name = d.pop("customer_name")
136
+
137
137
  customer_permission_review = cls(
138
138
  url=url,
139
139
  uuid=uuid,
140
140
  reviewer_full_name=reviewer_full_name,
141
141
  reviewer_uuid=reviewer_uuid,
142
- customer_uuid=customer_uuid,
143
- customer_name=customer_name,
144
142
  is_pending=is_pending,
145
143
  created=created,
146
144
  closed=closed,
145
+ customer_uuid=customer_uuid,
146
+ customer_name=customer_name,
147
147
  )
148
148
 
149
149
  customer_permission_review.additional_properties = d
@@ -22,6 +22,7 @@ class CustomerRequest:
22
22
  image (Union[File, None, Unset]):
23
23
  native_name (Union[Unset, str]):
24
24
  abbreviation (Union[Unset, str]):
25
+ description (Union[Unset, str]):
25
26
  contact_details (Union[Unset, str]):
26
27
  email (Union[Unset, str]):
27
28
  phone_number (Union[Unset, str]):
@@ -42,6 +43,7 @@ class CustomerRequest:
42
43
  image: Union[File, None, Unset] = UNSET
43
44
  native_name: Union[Unset, str] = UNSET
44
45
  abbreviation: Union[Unset, str] = UNSET
46
+ description: Union[Unset, str] = UNSET
45
47
  contact_details: Union[Unset, str] = UNSET
46
48
  email: Union[Unset, str] = UNSET
47
49
  phone_number: Union[Unset, str] = UNSET
@@ -75,6 +77,8 @@ class CustomerRequest:
75
77
 
76
78
  abbreviation = self.abbreviation
77
79
 
80
+ description = self.description
81
+
78
82
  contact_details = self.contact_details
79
83
 
80
84
  email = self.email
@@ -130,6 +134,8 @@ class CustomerRequest:
130
134
  field_dict["native_name"] = native_name
131
135
  if abbreviation is not UNSET:
132
136
  field_dict["abbreviation"] = abbreviation
137
+ if description is not UNSET:
138
+ field_dict["description"] = description
133
139
  if contact_details is not UNSET:
134
140
  field_dict["contact_details"] = contact_details
135
141
  if email is not UNSET:
@@ -187,6 +193,8 @@ class CustomerRequest:
187
193
 
188
194
  abbreviation = d.pop("abbreviation", UNSET)
189
195
 
196
+ description = d.pop("description", UNSET)
197
+
190
198
  contact_details = d.pop("contact_details", UNSET)
191
199
 
192
200
  email = d.pop("email", UNSET)
@@ -250,6 +258,7 @@ class CustomerRequest:
250
258
  image=image,
251
259
  native_name=native_name,
252
260
  abbreviation=abbreviation,
261
+ description=description,
253
262
  contact_details=contact_details,
254
263
  email=email,
255
264
  phone_number=phone_number,
@@ -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.service_account_state import ServiceAccountState
10
11
  from ..types import UNSET, Unset
11
12
 
12
13
  T = TypeVar("T", bound="CustomerServiceAccount")
@@ -21,6 +22,7 @@ class CustomerServiceAccount:
21
22
  created (datetime.datetime):
22
23
  modified (datetime.datetime):
23
24
  error_message (str):
25
+ state (ServiceAccountState):
24
26
  token (Union[None, str]):
25
27
  expires_at (Union[None, str]):
26
28
  customer (UUID):
@@ -38,6 +40,7 @@ class CustomerServiceAccount:
38
40
  created: datetime.datetime
39
41
  modified: datetime.datetime
40
42
  error_message: str
43
+ state: ServiceAccountState
41
44
  token: Union[None, str]
42
45
  expires_at: Union[None, str]
43
46
  customer: UUID
@@ -61,6 +64,8 @@ class CustomerServiceAccount:
61
64
 
62
65
  error_message = self.error_message
63
66
 
67
+ state = self.state.value
68
+
64
69
  token: Union[None, str]
65
70
  token = self.token
66
71
 
@@ -92,6 +97,7 @@ class CustomerServiceAccount:
92
97
  "created": created,
93
98
  "modified": modified,
94
99
  "error_message": error_message,
100
+ "state": state,
95
101
  "token": token,
96
102
  "expires_at": expires_at,
97
103
  "customer": customer,
@@ -125,6 +131,8 @@ class CustomerServiceAccount:
125
131
 
126
132
  error_message = d.pop("error_message")
127
133
 
134
+ state = ServiceAccountState(d.pop("state"))
135
+
128
136
  def _parse_token(data: object) -> Union[None, str]:
129
137
  if data is None:
130
138
  return data
@@ -161,6 +169,7 @@ class CustomerServiceAccount:
161
169
  created=created,
162
170
  modified=modified,
163
171
  error_message=error_message,
172
+ state=state,
164
173
  token=token,
165
174
  expires_at=expires_at,
166
175
  customer=customer,
@@ -21,6 +21,7 @@ class CustomersListFieldItem(str, Enum):
21
21
  CUSTOMER_CREDIT = "customer_credit"
22
22
  CUSTOMER_UNALLOCATED_CREDIT = "customer_unallocated_credit"
23
23
  DEFAULT_TAX_PERCENT = "default_tax_percent"
24
+ DESCRIPTION = "description"
24
25
  DISPLAY_NAME = "display_name"
25
26
  DOMAIN = "domain"
26
27
  EMAIL = "email"
@@ -21,6 +21,7 @@ class CustomersRetrieveFieldItem(str, Enum):
21
21
  CUSTOMER_CREDIT = "customer_credit"
22
22
  CUSTOMER_UNALLOCATED_CREDIT = "customer_unallocated_credit"
23
23
  DEFAULT_TAX_PERCENT = "default_tax_percent"
24
+ DESCRIPTION = "description"
24
25
  DISPLAY_NAME = "display_name"
25
26
  DOMAIN = "domain"
26
27
  EMAIL = "email"
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class CustomersUsersListO(str, Enum):
5
+ CONCATENATED_NAME = "concatenated_name"
6
+ VALUE_1 = "-concatenated_name"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,10 @@
1
+ from enum import Enum
2
+
3
+
4
+ class CustomersUsersListOrganizationRoleItemType0(str, Enum):
5
+ CUSTOMER_MANAGER = "CUSTOMER.MANAGER"
6
+ CUSTOMER_OWNER = "CUSTOMER.OWNER"
7
+ CUSTOMER_SUPPORT = "CUSTOMER.SUPPORT"
8
+
9
+ def __str__(self) -> str:
10
+ return str(self.value)
@@ -0,0 +1,10 @@
1
+ from enum import Enum
2
+
3
+
4
+ class CustomersUsersListProjectRoleItemType0(str, Enum):
5
+ PROJECT_ADMIN = "PROJECT.ADMIN"
6
+ PROJECT_MANAGER = "PROJECT.MANAGER"
7
+ PROJECT_MEMBER = "PROJECT.MEMBER"
8
+
9
+ def __str__(self) -> str:
10
+ return str(self.value)
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class DependencyLogicOperatorEnum(str, Enum):
5
+ AND = "and"
6
+ OR = "or"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -24,7 +24,7 @@ class EventSubscription:
24
24
  user_full_name (str):
25
25
  created (datetime.datetime):
26
26
  modified (datetime.datetime):
27
- source_ip (Union[None, str]):
27
+ source_ip (Union[None, str]): An IPv4 or IPv6 address.
28
28
  description (Union[Unset, str]):
29
29
  observable_objects (Union[Unset, Any]):
30
30
  """
@@ -22,6 +22,8 @@ class EventTypesEnum(str, Enum):
22
22
  CREATE_OF_CREDIT_BY_STAFF = "create_of_credit_by_staff"
23
23
  CUSTOMER_CREATION_SUCCEEDED = "customer_creation_succeeded"
24
24
  CUSTOMER_DELETION_SUCCEEDED = "customer_deletion_succeeded"
25
+ CUSTOMER_PERMISSION_REVIEW_CLOSED = "customer_permission_review_closed"
26
+ CUSTOMER_PERMISSION_REVIEW_CREATED = "customer_permission_review_created"
25
27
  CUSTOMER_UPDATE_SUCCEEDED = "customer_update_succeeded"
26
28
  CUSTOM_NOTIFICATION = "custom_notification"
27
29
  DROPLET_RESIZE_SCHEDULED = "droplet_resize_scheduled"
@@ -141,6 +143,8 @@ class EventTypesEnum(str, Enum):
141
143
  PROJECT_CREATION_SUCCEEDED = "project_creation_succeeded"
142
144
  PROJECT_DELETION_SUCCEEDED = "project_deletion_succeeded"
143
145
  PROJECT_DELETION_TRIGGERED = "project_deletion_triggered"
146
+ PROJECT_PERMISSION_REVIEW_CLOSED = "project_permission_review_closed"
147
+ PROJECT_PERMISSION_REVIEW_CREATED = "project_permission_review_created"
144
148
  PROJECT_UPDATE_REQUEST_APPROVED = "project_update_request_approved"
145
149
  PROJECT_UPDATE_REQUEST_CREATED = "project_update_request_created"
146
150
  PROJECT_UPDATE_REQUEST_REJECTED = "project_update_request_rejected"
@@ -18,6 +18,8 @@ class GroupInvitation:
18
18
  Attributes:
19
19
  scope_uuid (UUID):
20
20
  scope_name (str):
21
+ scope_description (str): Get the description field from the scope if it exists.
22
+ Returns empty string if scope doesn't have a description field.
21
23
  scope_type (Union[None, str]):
22
24
  customer_uuid (UUID):
23
25
  customer_name (str):
@@ -45,6 +47,7 @@ class GroupInvitation:
45
47
 
46
48
  scope_uuid: UUID
47
49
  scope_name: str
50
+ scope_description: str
48
51
  scope_type: Union[None, str]
49
52
  customer_uuid: UUID
50
53
  customer_name: str
@@ -72,6 +75,8 @@ class GroupInvitation:
72
75
 
73
76
  scope_name = self.scope_name
74
77
 
78
+ scope_description = self.scope_description
79
+
75
80
  scope_type: Union[None, str]
76
81
  scope_type = self.scope_type
77
82
 
@@ -130,6 +135,7 @@ class GroupInvitation:
130
135
  {
131
136
  "scope_uuid": scope_uuid,
132
137
  "scope_name": scope_name,
138
+ "scope_description": scope_description,
133
139
  "scope_type": scope_type,
134
140
  "customer_uuid": customer_uuid,
135
141
  "customer_name": customer_name,
@@ -168,6 +174,8 @@ class GroupInvitation:
168
174
 
169
175
  scope_name = d.pop("scope_name")
170
176
 
177
+ scope_description = d.pop("scope_description")
178
+
171
179
  def _parse_scope_type(data: object) -> Union[None, str]:
172
180
  if data is None:
173
181
  return data
@@ -243,6 +251,7 @@ class GroupInvitation:
243
251
  group_invitation = cls(
244
252
  scope_uuid=scope_uuid,
245
253
  scope_name=scope_name,
254
+ scope_description=scope_description,
246
255
  scope_type=scope_type,
247
256
  customer_uuid=customer_uuid,
248
257
  customer_name=customer_name,
@@ -20,6 +20,8 @@ class Invitation:
20
20
  Attributes:
21
21
  scope_uuid (UUID):
22
22
  scope_name (str):
23
+ scope_description (str): Get the description field from the scope if it exists.
24
+ Returns empty string if scope doesn't have a description field.
23
25
  scope_type (Union[None, str]):
24
26
  customer_uuid (UUID):
25
27
  customer_name (str):
@@ -49,6 +51,7 @@ class Invitation:
49
51
 
50
52
  scope_uuid: UUID
51
53
  scope_name: str
54
+ scope_description: str
52
55
  scope_type: Union[None, str]
53
56
  customer_uuid: UUID
54
57
  customer_name: str
@@ -79,6 +82,8 @@ class Invitation:
79
82
 
80
83
  scope_name = self.scope_name
81
84
 
85
+ scope_description = self.scope_description
86
+
82
87
  scope_type: Union[None, str]
83
88
  scope_type = self.scope_type
84
89
 
@@ -132,6 +137,7 @@ class Invitation:
132
137
  {
133
138
  "scope_uuid": scope_uuid,
134
139
  "scope_name": scope_name,
140
+ "scope_description": scope_description,
135
141
  "scope_type": scope_type,
136
142
  "customer_uuid": customer_uuid,
137
143
  "customer_name": customer_name,
@@ -174,6 +180,8 @@ class Invitation:
174
180
 
175
181
  scope_name = d.pop("scope_name")
176
182
 
183
+ scope_description = d.pop("scope_description")
184
+
177
185
  def _parse_scope_type(data: object) -> Union[None, str]:
178
186
  if data is None:
179
187
  return data
@@ -228,6 +236,7 @@ class Invitation:
228
236
  invitation = cls(
229
237
  scope_uuid=scope_uuid,
230
238
  scope_name=scope_name,
239
+ scope_description=scope_description,
231
240
  scope_type=scope_type,
232
241
  customer_uuid=customer_uuid,
233
242
  customer_name=customer_name,
@@ -0,0 +1,15 @@
1
+ from enum import Enum
2
+
3
+
4
+ class InvoicesItemsRetrieveO(str, Enum):
5
+ NAME = "name"
6
+ PROJECT_NAME = "project_name"
7
+ PROVIDER_NAME = "provider_name"
8
+ RESOURCE_NAME = "resource_name"
9
+ VALUE_1 = "-project_name"
10
+ VALUE_3 = "-resource_name"
11
+ VALUE_5 = "-provider_name"
12
+ VALUE_7 = "-name"
13
+
14
+ def __str__(self) -> str:
15
+ return str(self.value)
@@ -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 ..models.issue_status_type_enum import IssueStatusTypeEnum
9
+ from ..types import UNSET, Unset
10
+
11
+ T = TypeVar("T", bound="IssueStatus")
12
+
13
+
14
+ @_attrs_define
15
+ class IssueStatus:
16
+ """
17
+ Attributes:
18
+ url (str):
19
+ uuid (UUID):
20
+ name (str): Status name in Jira.
21
+ type_display (str):
22
+ type_ (Union[Unset, IssueStatusTypeEnum]):
23
+ """
24
+
25
+ url: str
26
+ uuid: UUID
27
+ name: str
28
+ type_display: str
29
+ type_: Union[Unset, IssueStatusTypeEnum] = UNSET
30
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
31
+
32
+ def to_dict(self) -> dict[str, Any]:
33
+ url = self.url
34
+
35
+ uuid = str(self.uuid)
36
+
37
+ name = self.name
38
+
39
+ type_display = self.type_display
40
+
41
+ type_: Union[Unset, int] = UNSET
42
+ if not isinstance(self.type_, Unset):
43
+ type_ = self.type_.value
44
+
45
+ field_dict: dict[str, Any] = {}
46
+ field_dict.update(self.additional_properties)
47
+ field_dict.update(
48
+ {
49
+ "url": url,
50
+ "uuid": uuid,
51
+ "name": name,
52
+ "type_display": type_display,
53
+ }
54
+ )
55
+ if type_ is not UNSET:
56
+ field_dict["type"] = type_
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
+ url = d.pop("url")
64
+
65
+ uuid = UUID(d.pop("uuid"))
66
+
67
+ name = d.pop("name")
68
+
69
+ type_display = d.pop("type_display")
70
+
71
+ _type_ = d.pop("type", UNSET)
72
+ type_: Union[Unset, IssueStatusTypeEnum]
73
+ if isinstance(_type_, Unset):
74
+ type_ = UNSET
75
+ else:
76
+ type_ = IssueStatusTypeEnum(_type_)
77
+
78
+ issue_status = cls(
79
+ url=url,
80
+ uuid=uuid,
81
+ name=name,
82
+ type_display=type_display,
83
+ type_=type_,
84
+ )
85
+
86
+ issue_status.additional_properties = d
87
+ return issue_status
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
@@ -0,0 +1,78 @@
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 ..models.issue_status_type_enum import IssueStatusTypeEnum
8
+ from ..types import UNSET, Unset
9
+
10
+ T = TypeVar("T", bound="IssueStatusRequest")
11
+
12
+
13
+ @_attrs_define
14
+ class IssueStatusRequest:
15
+ """
16
+ Attributes:
17
+ name (str): Status name in Jira.
18
+ type_ (Union[Unset, IssueStatusTypeEnum]):
19
+ """
20
+
21
+ name: str
22
+ type_: Union[Unset, IssueStatusTypeEnum] = UNSET
23
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
24
+
25
+ def to_dict(self) -> dict[str, Any]:
26
+ name = self.name
27
+
28
+ type_: Union[Unset, int] = UNSET
29
+ if not isinstance(self.type_, Unset):
30
+ type_ = self.type_.value
31
+
32
+ field_dict: dict[str, Any] = {}
33
+ field_dict.update(self.additional_properties)
34
+ field_dict.update(
35
+ {
36
+ "name": name,
37
+ }
38
+ )
39
+ if type_ is not UNSET:
40
+ field_dict["type"] = type_
41
+
42
+ return field_dict
43
+
44
+ @classmethod
45
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
46
+ d = dict(src_dict)
47
+ name = d.pop("name")
48
+
49
+ _type_ = d.pop("type", UNSET)
50
+ type_: Union[Unset, IssueStatusTypeEnum]
51
+ if isinstance(_type_, Unset):
52
+ type_ = UNSET
53
+ else:
54
+ type_ = IssueStatusTypeEnum(_type_)
55
+
56
+ issue_status_request = cls(
57
+ name=name,
58
+ type_=type_,
59
+ )
60
+
61
+ issue_status_request.additional_properties = d
62
+ return issue_status_request
63
+
64
+ @property
65
+ def additional_keys(self) -> list[str]:
66
+ return list(self.additional_properties.keys())
67
+
68
+ def __getitem__(self, key: str) -> Any:
69
+ return self.additional_properties[key]
70
+
71
+ def __setitem__(self, key: str, value: Any) -> None:
72
+ self.additional_properties[key] = value
73
+
74
+ def __delitem__(self, key: str) -> None:
75
+ del self.additional_properties[key]
76
+
77
+ def __contains__(self, key: str) -> bool:
78
+ return key in self.additional_properties
@@ -0,0 +1,9 @@
1
+ from enum import IntEnum
2
+
3
+
4
+ class IssueStatusTypeEnum(IntEnum):
5
+ VALUE_0 = 0
6
+ VALUE_1 = 1
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,10 @@
1
+ from enum import Enum
2
+
3
+
4
+ class KindEnum(str, Enum):
5
+ COURSE = "course"
6
+ DEFAULT = "default"
7
+ PUBLIC = "public"
8
+
9
+ def __str__(self) -> str:
10
+ return str(self.value)