waldur-api-client 7.8.2__py3-none-any.whl → 7.8.4__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.
- waldur_api_client/api/booking_resources/booking_resources_count.py +18 -0
- waldur_api_client/api/booking_resources/booking_resources_list.py +18 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_count.py +125 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_count.py +18 -18
- waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_list.py +18 -18
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_tos_stats_retrieve.py +146 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +18 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +18 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_update_options.py +168 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +18 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +18 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_renew.py +166 -0
- waldur_api_client/api/marketplace_service_providers/service_provider_checklists_summary.py +189 -0
- waldur_api_client/api/onboarding/__init__.py +1 -0
- waldur_api_client/api/onboarding/onboarding_supported_countries_retrieve.py +74 -0
- waldur_api_client/api/onboarding_justifications/__init__.py +1 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_attach_document.py +211 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_count.py +172 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_create.py +150 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_create_justification.py +154 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_destroy.py +89 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_list.py +175 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_partial_update.py +164 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_retrieve.py +142 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/__init__.py +1 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_count.py +172 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_create.py +150 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_create_customer.py +144 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_destroy.py +89 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_list.py +175 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_partial_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_retrieve.py +142 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_validate_company.py +154 -0
- waldur_api_client/api/openstack_backups/openstack_backups_restore.py +10 -10
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_count.py +33 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_create.py +154 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_destroy.py +91 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_list.py +33 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_partial_update.py +164 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_update.py +164 -0
- waldur_api_client/api/openstack_networks/openstack_networks_rbac_policy_create.py +24 -22
- waldur_api_client/api/projects/projects_checklist_template_count.py +125 -0
- waldur_api_client/api/projects/projects_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_count.py +125 -0
- waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_offerings_list.py +15 -0
- waldur_api_client/api/rancher_services/rancher_services_create.py +22 -22
- waldur_api_client/models/__init__.py +88 -10
- waldur_api_client/models/azure_sql_server_create_order_attributes.py +5 -10
- waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +7 -12
- waldur_api_client/models/booking_resource.py +9 -34
- waldur_api_client/models/booking_resources_list_field_item.py +1 -3
- waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/call_round.py +4 -4
- waldur_api_client/models/checklist_template.py +99 -0
- waldur_api_client/models/checklist_template_checklist.py +44 -0
- waldur_api_client/models/constance_settings.py +54 -0
- waldur_api_client/models/constance_settings_request.py +54 -0
- waldur_api_client/models/constance_settings_request_form.py +54 -0
- waldur_api_client/models/constance_settings_request_multipart.py +99 -0
- waldur_api_client/models/customer.py +9 -0
- waldur_api_client/models/customers_list_field_item.py +1 -0
- waldur_api_client/models/customers_retrieve_field_item.py +1 -0
- waldur_api_client/models/deprecated_network_rbac_policy.py +137 -0
- waldur_api_client/models/deprecated_network_rbac_policy_request.py +78 -0
- waldur_api_client/models/event_groups_enum.py +1 -0
- waldur_api_client/models/event_types_enum.py +3 -0
- waldur_api_client/models/generic_order_attributes.py +1 -2
- waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +1 -3
- waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_orders_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +2 -1
- waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +2 -1
- waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +1 -0
- waldur_api_client/models/merged_plugin_options.py +27 -0
- waldur_api_client/models/merged_plugin_options_request.py +27 -0
- waldur_api_client/models/move_resource_request.py +65 -0
- waldur_api_client/models/nested_round.py +5 -5
- waldur_api_client/models/network_rbac_policy_request.py +8 -0
- waldur_api_client/models/notification.py +9 -9
- waldur_api_client/models/{notification_context_fields.py → notification_context_schema.py} +6 -6
- waldur_api_client/models/notification_template_detail_serializers.py +9 -3
- waldur_api_client/models/offering_component.py +79 -0
- waldur_api_client/models/offering_component_request.py +80 -0
- waldur_api_client/models/onboarding_company_validation_request_request.py +88 -0
- waldur_api_client/models/onboarding_justification.py +183 -0
- waldur_api_client/models/onboarding_justification_create_request.py +68 -0
- waldur_api_client/models/onboarding_justification_documentation.py +108 -0
- waldur_api_client/models/onboarding_justification_documentation_request.py +84 -0
- waldur_api_client/models/onboarding_justification_documentation_request_form.py +84 -0
- waldur_api_client/models/onboarding_justification_documentation_request_multipart.py +98 -0
- waldur_api_client/models/onboarding_justification_request.py +75 -0
- waldur_api_client/models/onboarding_verification.py +250 -0
- waldur_api_client/models/onboarding_verification_request.py +128 -0
- waldur_api_client/models/onboarding_verification_status_enum.py +12 -0
- waldur_api_client/models/open_stack_backup_restoration.py +3 -5
- waldur_api_client/models/open_stack_backup_restoration_create_request.py +141 -0
- waldur_api_client/models/open_stack_backup_restoration_request.py +22 -30
- waldur_api_client/models/open_stack_create_floating_ip_request.py +89 -0
- waldur_api_client/models/open_stack_create_port_request.py +104 -0
- waldur_api_client/models/open_stack_instance.py +13 -29
- waldur_api_client/models/open_stack_instance_create_order_attributes.py +67 -54
- waldur_api_client/models/open_stack_instance_floating_i_ps_update_request.py +5 -5
- waldur_api_client/models/open_stack_instance_ports_update_request.py +5 -5
- waldur_api_client/models/open_stack_instance_request.py +1 -67
- waldur_api_client/models/open_stack_nested_port_request.py +0 -9
- waldur_api_client/models/{open_stack_nested_security_group_request.py → open_stack_security_group_hyperlink_request.py} +14 -14
- waldur_api_client/models/open_stack_server_group_hyperlink_request.py +59 -0
- waldur_api_client/models/open_stack_tenant_create_order_attributes.py +9 -14
- waldur_api_client/models/open_stack_volume_create_order_attributes.py +8 -13
- waldur_api_client/models/openstack_instances_list_field_item.py +0 -7
- waldur_api_client/models/openstack_instances_retrieve_field_item.py +0 -7
- waldur_api_client/models/order_create.py +8 -0
- waldur_api_client/models/order_details.py +9 -34
- waldur_api_client/models/patched_network_rbac_policy_request.py +85 -0
- waldur_api_client/models/patched_onboarding_justification_request.py +77 -0
- waldur_api_client/models/patched_onboarding_verification_request.py +128 -0
- waldur_api_client/models/patched_open_stack_instance_request.py +1 -67
- waldur_api_client/models/patched_project_credit_request.py +13 -0
- waldur_api_client/models/patched_project_request.py +1 -2
- waldur_api_client/models/patched_project_request_form.py +1 -2
- waldur_api_client/models/patched_project_request_multipart.py +1 -2
- waldur_api_client/models/project.py +10 -2
- waldur_api_client/models/project_credit.py +13 -0
- waldur_api_client/models/project_credit_request.py +13 -0
- waldur_api_client/models/{rancher_nested_security_group.py → project_hyperlink_request.py} +5 -5
- waldur_api_client/models/project_request.py +1 -2
- waldur_api_client/models/project_request_form.py +1 -2
- waldur_api_client/models/project_request_multipart.py +1 -2
- waldur_api_client/models/projects_list_field_item.py +1 -0
- waldur_api_client/models/projects_retrieve_field_item.py +1 -0
- waldur_api_client/models/protected_round.py +4 -4
- waldur_api_client/models/question.py +102 -0
- waldur_api_client/models/{open_stack_data_volume.py → question_options.py} +27 -29
- waldur_api_client/models/rancher_clusters_list_field_item.py +0 -1
- waldur_api_client/models/rancher_clusters_retrieve_field_item.py +0 -1
- waldur_api_client/models/rancher_service_create.py +508 -0
- waldur_api_client/models/rancher_service_create_marketplace_offering_plugin_options_type_0.py +44 -0
- waldur_api_client/models/rancher_service_create_request.py +185 -0
- waldur_api_client/models/rancher_service_request.py +16 -19
- waldur_api_client/models/rancher_workload_create.py +59 -0
- waldur_api_client/models/rancher_workload_create_request.py +59 -0
- waldur_api_client/models/resource.py +9 -34
- waldur_api_client/models/resource_renew_request.py +83 -0
- waldur_api_client/models/resource_renew_request_limits.py +44 -0
- waldur_api_client/models/robot_account_details.py +22 -13
- waldur_api_client/models/{status_enum.py → round_status.py} +1 -1
- waldur_api_client/models/service_provider_checklist_summary.py +98 -0
- waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +4 -9
- waldur_api_client/models/time_series_to_s_data.py +69 -0
- waldur_api_client/models/to_s_consent_dashboard.py +155 -0
- waldur_api_client/models/update_offering_component_request.py +79 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +11 -16
- waldur_api_client/models/validation_decision_enum.py +10 -0
- waldur_api_client/models/validation_method_enum.py +8 -0
- waldur_api_client/models/version_adoption.py +67 -0
- waldur_api_client/models/vmware_nested_network.py +0 -25
- waldur_api_client/models/vmware_nested_network_request.py +6 -14
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/METADATA +1 -1
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/RECORD +174 -101
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/WHEEL +0 -0
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
from uuid import UUID
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
from dateutil.parser import isoparse
|
|
9
|
+
|
|
10
|
+
from ..types import UNSET, Unset
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="OnboardingJustificationDocumentation")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class OnboardingJustificationDocumentation:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
uuid (UUID):
|
|
20
|
+
file_name (str):
|
|
21
|
+
file_size (int):
|
|
22
|
+
created (datetime.datetime):
|
|
23
|
+
file (Union[None, Unset, str]): Upload supporting documentation.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
uuid: UUID
|
|
27
|
+
file_name: str
|
|
28
|
+
file_size: int
|
|
29
|
+
created: datetime.datetime
|
|
30
|
+
file: Union[None, Unset, str] = UNSET
|
|
31
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
32
|
+
|
|
33
|
+
def to_dict(self) -> dict[str, Any]:
|
|
34
|
+
uuid = str(self.uuid)
|
|
35
|
+
|
|
36
|
+
file_name = self.file_name
|
|
37
|
+
|
|
38
|
+
file_size = self.file_size
|
|
39
|
+
|
|
40
|
+
created = self.created.isoformat()
|
|
41
|
+
|
|
42
|
+
file: Union[None, Unset, str]
|
|
43
|
+
if isinstance(self.file, Unset):
|
|
44
|
+
file = UNSET
|
|
45
|
+
else:
|
|
46
|
+
file = self.file
|
|
47
|
+
|
|
48
|
+
field_dict: dict[str, Any] = {}
|
|
49
|
+
field_dict.update(self.additional_properties)
|
|
50
|
+
field_dict.update(
|
|
51
|
+
{
|
|
52
|
+
"uuid": uuid,
|
|
53
|
+
"file_name": file_name,
|
|
54
|
+
"file_size": file_size,
|
|
55
|
+
"created": created,
|
|
56
|
+
}
|
|
57
|
+
)
|
|
58
|
+
if file is not UNSET:
|
|
59
|
+
field_dict["file"] = file
|
|
60
|
+
|
|
61
|
+
return field_dict
|
|
62
|
+
|
|
63
|
+
@classmethod
|
|
64
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
65
|
+
d = dict(src_dict)
|
|
66
|
+
uuid = UUID(d.pop("uuid"))
|
|
67
|
+
|
|
68
|
+
file_name = d.pop("file_name")
|
|
69
|
+
|
|
70
|
+
file_size = d.pop("file_size")
|
|
71
|
+
|
|
72
|
+
created = isoparse(d.pop("created"))
|
|
73
|
+
|
|
74
|
+
def _parse_file(data: object) -> Union[None, Unset, str]:
|
|
75
|
+
if data is None:
|
|
76
|
+
return data
|
|
77
|
+
if isinstance(data, Unset):
|
|
78
|
+
return data
|
|
79
|
+
return cast(Union[None, Unset, str], data)
|
|
80
|
+
|
|
81
|
+
file = _parse_file(d.pop("file", UNSET))
|
|
82
|
+
|
|
83
|
+
onboarding_justification_documentation = cls(
|
|
84
|
+
uuid=uuid,
|
|
85
|
+
file_name=file_name,
|
|
86
|
+
file_size=file_size,
|
|
87
|
+
created=created,
|
|
88
|
+
file=file,
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
onboarding_justification_documentation.additional_properties = d
|
|
92
|
+
return onboarding_justification_documentation
|
|
93
|
+
|
|
94
|
+
@property
|
|
95
|
+
def additional_keys(self) -> list[str]:
|
|
96
|
+
return list(self.additional_properties.keys())
|
|
97
|
+
|
|
98
|
+
def __getitem__(self, key: str) -> Any:
|
|
99
|
+
return self.additional_properties[key]
|
|
100
|
+
|
|
101
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
102
|
+
self.additional_properties[key] = value
|
|
103
|
+
|
|
104
|
+
def __delitem__(self, key: str) -> None:
|
|
105
|
+
del self.additional_properties[key]
|
|
106
|
+
|
|
107
|
+
def __contains__(self, key: str) -> bool:
|
|
108
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="OnboardingJustificationDocumentationRequest")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class OnboardingJustificationDocumentationRequest:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
file (Union[File, None, Unset]): Upload supporting documentation.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
file: Union[File, None, Unset] = UNSET
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
file: Union[None, Unset, types.FileTypes]
|
|
26
|
+
if isinstance(self.file, Unset):
|
|
27
|
+
file = UNSET
|
|
28
|
+
elif isinstance(self.file, File):
|
|
29
|
+
file = self.file.to_tuple()
|
|
30
|
+
|
|
31
|
+
else:
|
|
32
|
+
file = self.file
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update({})
|
|
37
|
+
if file is not UNSET:
|
|
38
|
+
field_dict["file"] = file
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
44
|
+
d = dict(src_dict)
|
|
45
|
+
|
|
46
|
+
def _parse_file(data: object) -> Union[File, None, Unset]:
|
|
47
|
+
if data is None:
|
|
48
|
+
return data
|
|
49
|
+
if isinstance(data, Unset):
|
|
50
|
+
return data
|
|
51
|
+
try:
|
|
52
|
+
if not isinstance(data, bytes):
|
|
53
|
+
raise TypeError()
|
|
54
|
+
file_type_0 = File(payload=BytesIO(data))
|
|
55
|
+
|
|
56
|
+
return file_type_0
|
|
57
|
+
except: # noqa: E722
|
|
58
|
+
pass
|
|
59
|
+
return cast(Union[File, None, Unset], data)
|
|
60
|
+
|
|
61
|
+
file = _parse_file(d.pop("file", UNSET))
|
|
62
|
+
|
|
63
|
+
onboarding_justification_documentation_request = cls(
|
|
64
|
+
file=file,
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
onboarding_justification_documentation_request.additional_properties = d
|
|
68
|
+
return onboarding_justification_documentation_request
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def additional_keys(self) -> list[str]:
|
|
72
|
+
return list(self.additional_properties.keys())
|
|
73
|
+
|
|
74
|
+
def __getitem__(self, key: str) -> Any:
|
|
75
|
+
return self.additional_properties[key]
|
|
76
|
+
|
|
77
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
78
|
+
self.additional_properties[key] = value
|
|
79
|
+
|
|
80
|
+
def __delitem__(self, key: str) -> None:
|
|
81
|
+
del self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __contains__(self, key: str) -> bool:
|
|
84
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="OnboardingJustificationDocumentationRequestForm")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class OnboardingJustificationDocumentationRequestForm:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
file (Union[File, None, Unset]): Upload supporting documentation.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
file: Union[File, None, Unset] = UNSET
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
file: Union[None, Unset, types.FileTypes]
|
|
26
|
+
if isinstance(self.file, Unset):
|
|
27
|
+
file = UNSET
|
|
28
|
+
elif isinstance(self.file, File):
|
|
29
|
+
file = self.file.to_tuple()
|
|
30
|
+
|
|
31
|
+
else:
|
|
32
|
+
file = self.file
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update({})
|
|
37
|
+
if file is not UNSET:
|
|
38
|
+
field_dict["file"] = file
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
44
|
+
d = dict(src_dict)
|
|
45
|
+
|
|
46
|
+
def _parse_file(data: object) -> Union[File, None, Unset]:
|
|
47
|
+
if data is None:
|
|
48
|
+
return data
|
|
49
|
+
if isinstance(data, Unset):
|
|
50
|
+
return data
|
|
51
|
+
try:
|
|
52
|
+
if not isinstance(data, bytes):
|
|
53
|
+
raise TypeError()
|
|
54
|
+
file_type_0 = File(payload=BytesIO(data))
|
|
55
|
+
|
|
56
|
+
return file_type_0
|
|
57
|
+
except: # noqa: E722
|
|
58
|
+
pass
|
|
59
|
+
return cast(Union[File, None, Unset], data)
|
|
60
|
+
|
|
61
|
+
file = _parse_file(d.pop("file", UNSET))
|
|
62
|
+
|
|
63
|
+
onboarding_justification_documentation_request_form = cls(
|
|
64
|
+
file=file,
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
onboarding_justification_documentation_request_form.additional_properties = d
|
|
68
|
+
return onboarding_justification_documentation_request_form
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def additional_keys(self) -> list[str]:
|
|
72
|
+
return list(self.additional_properties.keys())
|
|
73
|
+
|
|
74
|
+
def __getitem__(self, key: str) -> Any:
|
|
75
|
+
return self.additional_properties[key]
|
|
76
|
+
|
|
77
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
78
|
+
self.additional_properties[key] = value
|
|
79
|
+
|
|
80
|
+
def __delitem__(self, key: str) -> None:
|
|
81
|
+
del self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __contains__(self, key: str) -> bool:
|
|
84
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="OnboardingJustificationDocumentationRequestMultipart")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class OnboardingJustificationDocumentationRequestMultipart:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
file (Union[File, None, Unset]): Upload supporting documentation.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
file: Union[File, None, Unset] = UNSET
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
file: Union[None, Unset, types.FileTypes]
|
|
26
|
+
if isinstance(self.file, Unset):
|
|
27
|
+
file = UNSET
|
|
28
|
+
elif isinstance(self.file, File):
|
|
29
|
+
file = self.file.to_tuple()
|
|
30
|
+
|
|
31
|
+
else:
|
|
32
|
+
file = self.file
|
|
33
|
+
|
|
34
|
+
field_dict: dict[str, Any] = {}
|
|
35
|
+
field_dict.update(self.additional_properties)
|
|
36
|
+
field_dict.update({})
|
|
37
|
+
if file is not UNSET:
|
|
38
|
+
field_dict["file"] = file
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
def to_multipart(self) -> types.RequestFiles:
|
|
43
|
+
files: types.RequestFiles = []
|
|
44
|
+
|
|
45
|
+
if not isinstance(self.file, Unset):
|
|
46
|
+
if isinstance(self.file, File):
|
|
47
|
+
files.append(("file", self.file.to_tuple()))
|
|
48
|
+
else:
|
|
49
|
+
files.append(("file", (None, str(self.file).encode(), "text/plain")))
|
|
50
|
+
|
|
51
|
+
for prop_name, prop in self.additional_properties.items():
|
|
52
|
+
files.append((prop_name, (None, str(prop).encode(), "text/plain")))
|
|
53
|
+
|
|
54
|
+
return files
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
58
|
+
d = dict(src_dict)
|
|
59
|
+
|
|
60
|
+
def _parse_file(data: object) -> Union[File, None, Unset]:
|
|
61
|
+
if data is None:
|
|
62
|
+
return data
|
|
63
|
+
if isinstance(data, Unset):
|
|
64
|
+
return data
|
|
65
|
+
try:
|
|
66
|
+
if not isinstance(data, bytes):
|
|
67
|
+
raise TypeError()
|
|
68
|
+
file_type_0 = File(payload=BytesIO(data))
|
|
69
|
+
|
|
70
|
+
return file_type_0
|
|
71
|
+
except: # noqa: E722
|
|
72
|
+
pass
|
|
73
|
+
return cast(Union[File, None, Unset], data)
|
|
74
|
+
|
|
75
|
+
file = _parse_file(d.pop("file", UNSET))
|
|
76
|
+
|
|
77
|
+
onboarding_justification_documentation_request_multipart = cls(
|
|
78
|
+
file=file,
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
onboarding_justification_documentation_request_multipart.additional_properties = d
|
|
82
|
+
return onboarding_justification_documentation_request_multipart
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
def additional_keys(self) -> list[str]:
|
|
86
|
+
return list(self.additional_properties.keys())
|
|
87
|
+
|
|
88
|
+
def __getitem__(self, key: str) -> Any:
|
|
89
|
+
return self.additional_properties[key]
|
|
90
|
+
|
|
91
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
92
|
+
self.additional_properties[key] = value
|
|
93
|
+
|
|
94
|
+
def __delitem__(self, key: str) -> None:
|
|
95
|
+
del self.additional_properties[key]
|
|
96
|
+
|
|
97
|
+
def __contains__(self, key: str) -> bool:
|
|
98
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
T = TypeVar("T", bound="OnboardingJustificationRequest")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class OnboardingJustificationRequest:
|
|
12
|
+
"""
|
|
13
|
+
Attributes:
|
|
14
|
+
verification (int):
|
|
15
|
+
user (int):
|
|
16
|
+
user_justification (str): User's explanation for why they should be authorized
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
verification: int
|
|
20
|
+
user: int
|
|
21
|
+
user_justification: str
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
verification = self.verification
|
|
26
|
+
|
|
27
|
+
user = self.user
|
|
28
|
+
|
|
29
|
+
user_justification = self.user_justification
|
|
30
|
+
|
|
31
|
+
field_dict: dict[str, Any] = {}
|
|
32
|
+
field_dict.update(self.additional_properties)
|
|
33
|
+
field_dict.update(
|
|
34
|
+
{
|
|
35
|
+
"verification": verification,
|
|
36
|
+
"user": user,
|
|
37
|
+
"user_justification": user_justification,
|
|
38
|
+
}
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
return field_dict
|
|
42
|
+
|
|
43
|
+
@classmethod
|
|
44
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
45
|
+
d = dict(src_dict)
|
|
46
|
+
verification = d.pop("verification")
|
|
47
|
+
|
|
48
|
+
user = d.pop("user")
|
|
49
|
+
|
|
50
|
+
user_justification = d.pop("user_justification")
|
|
51
|
+
|
|
52
|
+
onboarding_justification_request = cls(
|
|
53
|
+
verification=verification,
|
|
54
|
+
user=user,
|
|
55
|
+
user_justification=user_justification,
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
onboarding_justification_request.additional_properties = d
|
|
59
|
+
return onboarding_justification_request
|
|
60
|
+
|
|
61
|
+
@property
|
|
62
|
+
def additional_keys(self) -> list[str]:
|
|
63
|
+
return list(self.additional_properties.keys())
|
|
64
|
+
|
|
65
|
+
def __getitem__(self, key: str) -> Any:
|
|
66
|
+
return self.additional_properties[key]
|
|
67
|
+
|
|
68
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
69
|
+
self.additional_properties[key] = value
|
|
70
|
+
|
|
71
|
+
def __delitem__(self, key: str) -> None:
|
|
72
|
+
del self.additional_properties[key]
|
|
73
|
+
|
|
74
|
+
def __contains__(self, key: str) -> bool:
|
|
75
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
from uuid import UUID
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
from dateutil.parser import isoparse
|
|
9
|
+
|
|
10
|
+
from ..models.onboarding_verification_status_enum import OnboardingVerificationStatusEnum
|
|
11
|
+
from ..models.validation_method_enum import ValidationMethodEnum
|
|
12
|
+
from ..types import UNSET, Unset
|
|
13
|
+
|
|
14
|
+
T = TypeVar("T", bound="OnboardingVerification")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@_attrs_define
|
|
18
|
+
class OnboardingVerification:
|
|
19
|
+
"""
|
|
20
|
+
Attributes:
|
|
21
|
+
uuid (UUID):
|
|
22
|
+
user (int): User requesting company onboarding
|
|
23
|
+
country (str): ISO country code (e.g., 'EE' for Estonia)
|
|
24
|
+
legal_person_identifier (str): Official company registration code
|
|
25
|
+
status (OnboardingVerificationStatusEnum):
|
|
26
|
+
validation_method (ValidationMethodEnum):
|
|
27
|
+
verified_user_roles (Any): Roles the user has in the company
|
|
28
|
+
verified_company_data (Any): Company information retrieved during validation
|
|
29
|
+
raw_response (Any): Raw API response for debugging and auditing
|
|
30
|
+
error_traceback (str):
|
|
31
|
+
error_message (str):
|
|
32
|
+
validated_at (Union[None, datetime.datetime]): When validation was completed
|
|
33
|
+
customer (Union[None, int]): Customer created after successful validation
|
|
34
|
+
created (datetime.datetime):
|
|
35
|
+
modified (datetime.datetime):
|
|
36
|
+
legal_name (Union[Unset, str]): Claimed company name (optional, for reference)
|
|
37
|
+
user_submitted_customer_metadata (Union[Unset, Any]): Additional customer metadata submitted by user for manual
|
|
38
|
+
verification cases. Should contain valid Customer model fields.
|
|
39
|
+
expires_at (Union[None, Unset, datetime.datetime]): When this verification expires
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
uuid: UUID
|
|
43
|
+
user: int
|
|
44
|
+
country: str
|
|
45
|
+
legal_person_identifier: str
|
|
46
|
+
status: OnboardingVerificationStatusEnum
|
|
47
|
+
validation_method: ValidationMethodEnum
|
|
48
|
+
verified_user_roles: Any
|
|
49
|
+
verified_company_data: Any
|
|
50
|
+
raw_response: Any
|
|
51
|
+
error_traceback: str
|
|
52
|
+
error_message: str
|
|
53
|
+
validated_at: Union[None, datetime.datetime]
|
|
54
|
+
customer: Union[None, int]
|
|
55
|
+
created: datetime.datetime
|
|
56
|
+
modified: datetime.datetime
|
|
57
|
+
legal_name: Union[Unset, str] = UNSET
|
|
58
|
+
user_submitted_customer_metadata: Union[Unset, Any] = UNSET
|
|
59
|
+
expires_at: Union[None, Unset, datetime.datetime] = UNSET
|
|
60
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
61
|
+
|
|
62
|
+
def to_dict(self) -> dict[str, Any]:
|
|
63
|
+
uuid = str(self.uuid)
|
|
64
|
+
|
|
65
|
+
user = self.user
|
|
66
|
+
|
|
67
|
+
country = self.country
|
|
68
|
+
|
|
69
|
+
legal_person_identifier = self.legal_person_identifier
|
|
70
|
+
|
|
71
|
+
status = self.status.value
|
|
72
|
+
|
|
73
|
+
validation_method = self.validation_method.value
|
|
74
|
+
|
|
75
|
+
verified_user_roles = self.verified_user_roles
|
|
76
|
+
|
|
77
|
+
verified_company_data = self.verified_company_data
|
|
78
|
+
|
|
79
|
+
raw_response = self.raw_response
|
|
80
|
+
|
|
81
|
+
error_traceback = self.error_traceback
|
|
82
|
+
|
|
83
|
+
error_message = self.error_message
|
|
84
|
+
|
|
85
|
+
validated_at: Union[None, str]
|
|
86
|
+
if isinstance(self.validated_at, datetime.datetime):
|
|
87
|
+
validated_at = self.validated_at.isoformat()
|
|
88
|
+
else:
|
|
89
|
+
validated_at = self.validated_at
|
|
90
|
+
|
|
91
|
+
customer: Union[None, int]
|
|
92
|
+
customer = self.customer
|
|
93
|
+
|
|
94
|
+
created = self.created.isoformat()
|
|
95
|
+
|
|
96
|
+
modified = self.modified.isoformat()
|
|
97
|
+
|
|
98
|
+
legal_name = self.legal_name
|
|
99
|
+
|
|
100
|
+
user_submitted_customer_metadata = self.user_submitted_customer_metadata
|
|
101
|
+
|
|
102
|
+
expires_at: Union[None, Unset, str]
|
|
103
|
+
if isinstance(self.expires_at, Unset):
|
|
104
|
+
expires_at = UNSET
|
|
105
|
+
elif isinstance(self.expires_at, datetime.datetime):
|
|
106
|
+
expires_at = self.expires_at.isoformat()
|
|
107
|
+
else:
|
|
108
|
+
expires_at = self.expires_at
|
|
109
|
+
|
|
110
|
+
field_dict: dict[str, Any] = {}
|
|
111
|
+
field_dict.update(self.additional_properties)
|
|
112
|
+
field_dict.update(
|
|
113
|
+
{
|
|
114
|
+
"uuid": uuid,
|
|
115
|
+
"user": user,
|
|
116
|
+
"country": country,
|
|
117
|
+
"legal_person_identifier": legal_person_identifier,
|
|
118
|
+
"status": status,
|
|
119
|
+
"validation_method": validation_method,
|
|
120
|
+
"verified_user_roles": verified_user_roles,
|
|
121
|
+
"verified_company_data": verified_company_data,
|
|
122
|
+
"raw_response": raw_response,
|
|
123
|
+
"error_traceback": error_traceback,
|
|
124
|
+
"error_message": error_message,
|
|
125
|
+
"validated_at": validated_at,
|
|
126
|
+
"customer": customer,
|
|
127
|
+
"created": created,
|
|
128
|
+
"modified": modified,
|
|
129
|
+
}
|
|
130
|
+
)
|
|
131
|
+
if legal_name is not UNSET:
|
|
132
|
+
field_dict["legal_name"] = legal_name
|
|
133
|
+
if user_submitted_customer_metadata is not UNSET:
|
|
134
|
+
field_dict["user_submitted_customer_metadata"] = user_submitted_customer_metadata
|
|
135
|
+
if expires_at is not UNSET:
|
|
136
|
+
field_dict["expires_at"] = expires_at
|
|
137
|
+
|
|
138
|
+
return field_dict
|
|
139
|
+
|
|
140
|
+
@classmethod
|
|
141
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
142
|
+
d = dict(src_dict)
|
|
143
|
+
uuid = UUID(d.pop("uuid"))
|
|
144
|
+
|
|
145
|
+
user = d.pop("user")
|
|
146
|
+
|
|
147
|
+
country = d.pop("country")
|
|
148
|
+
|
|
149
|
+
legal_person_identifier = d.pop("legal_person_identifier")
|
|
150
|
+
|
|
151
|
+
status = OnboardingVerificationStatusEnum(d.pop("status"))
|
|
152
|
+
|
|
153
|
+
validation_method = ValidationMethodEnum(d.pop("validation_method"))
|
|
154
|
+
|
|
155
|
+
verified_user_roles = d.pop("verified_user_roles")
|
|
156
|
+
|
|
157
|
+
verified_company_data = d.pop("verified_company_data")
|
|
158
|
+
|
|
159
|
+
raw_response = d.pop("raw_response")
|
|
160
|
+
|
|
161
|
+
error_traceback = d.pop("error_traceback")
|
|
162
|
+
|
|
163
|
+
error_message = d.pop("error_message")
|
|
164
|
+
|
|
165
|
+
def _parse_validated_at(data: object) -> Union[None, datetime.datetime]:
|
|
166
|
+
if data is None:
|
|
167
|
+
return data
|
|
168
|
+
try:
|
|
169
|
+
if not isinstance(data, str):
|
|
170
|
+
raise TypeError()
|
|
171
|
+
validated_at_type_0 = isoparse(data)
|
|
172
|
+
|
|
173
|
+
return validated_at_type_0
|
|
174
|
+
except: # noqa: E722
|
|
175
|
+
pass
|
|
176
|
+
return cast(Union[None, datetime.datetime], data)
|
|
177
|
+
|
|
178
|
+
validated_at = _parse_validated_at(d.pop("validated_at"))
|
|
179
|
+
|
|
180
|
+
def _parse_customer(data: object) -> Union[None, int]:
|
|
181
|
+
if data is None:
|
|
182
|
+
return data
|
|
183
|
+
return cast(Union[None, int], data)
|
|
184
|
+
|
|
185
|
+
customer = _parse_customer(d.pop("customer"))
|
|
186
|
+
|
|
187
|
+
created = isoparse(d.pop("created"))
|
|
188
|
+
|
|
189
|
+
modified = isoparse(d.pop("modified"))
|
|
190
|
+
|
|
191
|
+
legal_name = d.pop("legal_name", UNSET)
|
|
192
|
+
|
|
193
|
+
user_submitted_customer_metadata = d.pop("user_submitted_customer_metadata", UNSET)
|
|
194
|
+
|
|
195
|
+
def _parse_expires_at(data: object) -> Union[None, Unset, datetime.datetime]:
|
|
196
|
+
if data is None:
|
|
197
|
+
return data
|
|
198
|
+
if isinstance(data, Unset):
|
|
199
|
+
return data
|
|
200
|
+
try:
|
|
201
|
+
if not isinstance(data, str):
|
|
202
|
+
raise TypeError()
|
|
203
|
+
expires_at_type_0 = isoparse(data)
|
|
204
|
+
|
|
205
|
+
return expires_at_type_0
|
|
206
|
+
except: # noqa: E722
|
|
207
|
+
pass
|
|
208
|
+
return cast(Union[None, Unset, datetime.datetime], data)
|
|
209
|
+
|
|
210
|
+
expires_at = _parse_expires_at(d.pop("expires_at", UNSET))
|
|
211
|
+
|
|
212
|
+
onboarding_verification = cls(
|
|
213
|
+
uuid=uuid,
|
|
214
|
+
user=user,
|
|
215
|
+
country=country,
|
|
216
|
+
legal_person_identifier=legal_person_identifier,
|
|
217
|
+
status=status,
|
|
218
|
+
validation_method=validation_method,
|
|
219
|
+
verified_user_roles=verified_user_roles,
|
|
220
|
+
verified_company_data=verified_company_data,
|
|
221
|
+
raw_response=raw_response,
|
|
222
|
+
error_traceback=error_traceback,
|
|
223
|
+
error_message=error_message,
|
|
224
|
+
validated_at=validated_at,
|
|
225
|
+
customer=customer,
|
|
226
|
+
created=created,
|
|
227
|
+
modified=modified,
|
|
228
|
+
legal_name=legal_name,
|
|
229
|
+
user_submitted_customer_metadata=user_submitted_customer_metadata,
|
|
230
|
+
expires_at=expires_at,
|
|
231
|
+
)
|
|
232
|
+
|
|
233
|
+
onboarding_verification.additional_properties = d
|
|
234
|
+
return onboarding_verification
|
|
235
|
+
|
|
236
|
+
@property
|
|
237
|
+
def additional_keys(self) -> list[str]:
|
|
238
|
+
return list(self.additional_properties.keys())
|
|
239
|
+
|
|
240
|
+
def __getitem__(self, key: str) -> Any:
|
|
241
|
+
return self.additional_properties[key]
|
|
242
|
+
|
|
243
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
244
|
+
self.additional_properties[key] = value
|
|
245
|
+
|
|
246
|
+
def __delitem__(self, key: str) -> None:
|
|
247
|
+
del self.additional_properties[key]
|
|
248
|
+
|
|
249
|
+
def __contains__(self, key: str) -> bool:
|
|
250
|
+
return key in self.additional_properties
|