waldur-api-client 7.8.3__py3-none-any.whl → 7.8.5__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 (341) hide show
  1. waldur_api_client/api/backend_resources/backend_resources_import_resource.py +3 -3
  2. waldur_api_client/api/booking_resources/booking_resources_count.py +108 -0
  3. waldur_api_client/api/booking_resources/booking_resources_list.py +108 -0
  4. waldur_api_client/api/call_managing_organisations/call_managing_organisations_add_user.py +17 -10
  5. waldur_api_client/api/customers/customers_add_user.py +17 -10
  6. waldur_api_client/api/marketplace_component_usages/marketplace_component_usages_count.py +30 -0
  7. waldur_api_client/api/marketplace_component_usages/marketplace_component_usages_list.py +30 -0
  8. waldur_api_client/api/marketplace_customer_component_usage_policies/__init__.py +1 -0
  9. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_actions_count.py +125 -0
  10. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_actions_retrieve.py +119 -0
  11. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_count.py +239 -0
  12. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_create.py +152 -0
  13. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_destroy.py +89 -0
  14. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_list.py +242 -0
  15. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_partial_update.py +166 -0
  16. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_retrieve.py +144 -0
  17. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_update.py +166 -0
  18. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_count.py +125 -0
  19. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_retrieve.py +126 -0
  20. waldur_api_client/api/marketplace_orders/marketplace_orders_set_backend_id.py +105 -0
  21. waldur_api_client/api/marketplace_plans/marketplace_plans_update_discounts.py +123 -0
  22. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_add_partition.py +168 -0
  23. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_add_software_catalog.py +168 -0
  24. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_add_user.py +19 -10
  25. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_component_stats_list.py +15 -0
  26. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_costs_list.py +15 -0
  27. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_count.py +15 -0
  28. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_create_offering_component.py +1 -1
  29. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_customers_list.py +15 -0
  30. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_count.py +15 -0
  31. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_list.py +15 -0
  32. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_list.py +15 -0
  33. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_remove_partition.py +107 -0
  34. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_remove_software_catalog.py +107 -0
  35. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_tos_stats_retrieve.py +146 -0
  36. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_partition_partial_update.py +168 -0
  37. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_software_catalog_partial_update.py +168 -0
  38. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +108 -0
  39. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +108 -0
  40. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_set_downscaled.py +107 -0
  41. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_set_paused.py +107 -0
  42. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_set_restrict_member_access.py +107 -0
  43. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_update_options.py +168 -0
  44. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_count.py +15 -0
  45. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_list.py +15 -0
  46. waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +108 -0
  47. waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +108 -0
  48. waldur_api_client/api/marketplace_resources/marketplace_resources_renew.py +166 -0
  49. waldur_api_client/api/marketplace_resources/marketplace_resources_set_downscaled.py +107 -0
  50. waldur_api_client/api/marketplace_resources/marketplace_resources_set_paused.py +107 -0
  51. waldur_api_client/api/marketplace_resources/marketplace_resources_set_restrict_member_access.py +107 -0
  52. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_add_user.py +17 -10
  53. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_customer_projects_list.py +15 -0
  54. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_offerings_list.py +15 -0
  55. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_projects_list.py +14 -24
  56. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_set_offerings_username.py +8 -67
  57. waldur_api_client/api/marketplace_service_providers/service_provider_checklists_summary.py +189 -0
  58. waldur_api_client/api/marketplace_site_agent_identities/__init__.py +1 -0
  59. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_count.py +240 -0
  60. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_create.py +148 -0
  61. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_destroy.py +89 -0
  62. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_list.py +241 -0
  63. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_register_event_subscription.py +176 -0
  64. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_register_service.py +170 -0
  65. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_retrieve.py +140 -0
  66. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_update.py +162 -0
  67. waldur_api_client/api/marketplace_site_agent_processors/__init__.py +1 -0
  68. waldur_api_client/api/marketplace_site_agent_processors/marketplace_site_agent_processors_count.py +240 -0
  69. waldur_api_client/api/marketplace_site_agent_processors/marketplace_site_agent_processors_list.py +241 -0
  70. waldur_api_client/api/marketplace_site_agent_processors/marketplace_site_agent_processors_retrieve.py +142 -0
  71. waldur_api_client/api/marketplace_site_agent_services/__init__.py +1 -0
  72. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_count.py +229 -0
  73. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_list.py +230 -0
  74. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_register_processor.py +172 -0
  75. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_retrieve.py +140 -0
  76. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_set_statistics.py +166 -0
  77. waldur_api_client/api/marketplace_software_catalogs/__init__.py +1 -0
  78. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_count.py +225 -0
  79. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_create.py +150 -0
  80. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_destroy.py +89 -0
  81. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_list.py +226 -0
  82. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_partial_update.py +164 -0
  83. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_retrieve.py +142 -0
  84. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_update.py +164 -0
  85. waldur_api_client/api/marketplace_software_packages/__init__.py +1 -0
  86. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_count.py +352 -0
  87. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_create.py +150 -0
  88. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_destroy.py +89 -0
  89. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_list.py +353 -0
  90. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_partial_update.py +164 -0
  91. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_retrieve.py +142 -0
  92. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_update.py +164 -0
  93. waldur_api_client/api/marketplace_software_targets/__init__.py +1 -0
  94. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_count.py +313 -0
  95. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_create.py +117 -0
  96. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_destroy.py +89 -0
  97. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_list.py +314 -0
  98. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_partial_update.py +142 -0
  99. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_retrieve.py +142 -0
  100. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_update.py +142 -0
  101. waldur_api_client/api/marketplace_software_versions/__init__.py +1 -0
  102. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_count.py +310 -0
  103. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_create.py +117 -0
  104. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_destroy.py +89 -0
  105. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_list.py +311 -0
  106. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_partial_update.py +142 -0
  107. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_retrieve.py +142 -0
  108. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_update.py +142 -0
  109. waldur_api_client/api/onboarding/__init__.py +1 -0
  110. waldur_api_client/api/onboarding/onboarding_supported_countries_retrieve.py +74 -0
  111. waldur_api_client/api/onboarding_justifications/__init__.py +1 -0
  112. waldur_api_client/api/onboarding_justifications/onboarding_justifications_approve.py +168 -0
  113. waldur_api_client/api/onboarding_justifications/onboarding_justifications_attach_document.py +211 -0
  114. waldur_api_client/api/onboarding_justifications/onboarding_justifications_count.py +172 -0
  115. waldur_api_client/api/onboarding_justifications/onboarding_justifications_create.py +150 -0
  116. waldur_api_client/api/onboarding_justifications/onboarding_justifications_create_justification.py +154 -0
  117. waldur_api_client/api/onboarding_justifications/onboarding_justifications_destroy.py +89 -0
  118. waldur_api_client/api/onboarding_justifications/onboarding_justifications_list.py +175 -0
  119. waldur_api_client/api/onboarding_justifications/onboarding_justifications_partial_update.py +164 -0
  120. waldur_api_client/api/onboarding_justifications/onboarding_justifications_reject.py +168 -0
  121. waldur_api_client/api/onboarding_justifications/onboarding_justifications_retrieve.py +142 -0
  122. waldur_api_client/api/onboarding_justifications/onboarding_justifications_update.py +164 -0
  123. waldur_api_client/api/onboarding_verifications/__init__.py +1 -0
  124. waldur_api_client/api/onboarding_verifications/onboarding_verifications_count.py +172 -0
  125. waldur_api_client/api/onboarding_verifications/onboarding_verifications_create.py +150 -0
  126. waldur_api_client/api/onboarding_verifications/onboarding_verifications_create_customer.py +144 -0
  127. waldur_api_client/api/onboarding_verifications/onboarding_verifications_destroy.py +89 -0
  128. waldur_api_client/api/onboarding_verifications/onboarding_verifications_list.py +175 -0
  129. waldur_api_client/api/onboarding_verifications/onboarding_verifications_partial_update.py +164 -0
  130. waldur_api_client/api/onboarding_verifications/onboarding_verifications_retrieve.py +142 -0
  131. waldur_api_client/api/onboarding_verifications/onboarding_verifications_update.py +164 -0
  132. waldur_api_client/api/onboarding_verifications/onboarding_verifications_validate_company.py +154 -0
  133. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_count.py +33 -0
  134. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_create.py +154 -0
  135. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_destroy.py +91 -0
  136. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_list.py +33 -0
  137. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_partial_update.py +164 -0
  138. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_update.py +164 -0
  139. waldur_api_client/api/openstack_networks/openstack_networks_rbac_policy_create.py +24 -22
  140. waldur_api_client/api/projects/projects_add_user.py +17 -10
  141. waldur_api_client/api/projects/projects_checklist_template_count.py +125 -0
  142. waldur_api_client/api/projects/projects_checklist_template_retrieve.py +126 -0
  143. waldur_api_client/api/projects/projects_count.py +30 -0
  144. waldur_api_client/api/projects/projects_list.py +30 -0
  145. waldur_api_client/api/projects/projects_move_project.py +19 -10
  146. waldur_api_client/api/projects/projects_recover.py +166 -0
  147. waldur_api_client/api/proposal_proposals/proposal_proposals_add_user.py +17 -10
  148. waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_count.py +125 -0
  149. waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_retrieve.py +126 -0
  150. waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_add_user.py +17 -10
  151. waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_offerings_list.py +15 -0
  152. waldur_api_client/api/remote_waldur_api/remote_waldur_api_pull_resource_robot_accounts.py +88 -0
  153. waldur_api_client/models/__init__.py +214 -8
  154. waldur_api_client/models/agent_event_subscription_create_request.py +71 -0
  155. waldur_api_client/models/agent_identity.py +211 -0
  156. waldur_api_client/models/agent_identity_request.py +157 -0
  157. waldur_api_client/models/agent_processor.py +170 -0
  158. waldur_api_client/models/agent_processor_create_request.py +89 -0
  159. waldur_api_client/models/agent_service.py +172 -0
  160. waldur_api_client/models/agent_service_create_request.py +81 -0
  161. waldur_api_client/models/agent_service_state.py +10 -0
  162. waldur_api_client/models/agent_service_statistics_request.py +59 -0
  163. waldur_api_client/models/base_provider_plan.py +21 -0
  164. waldur_api_client/models/base_public_plan.py +21 -0
  165. waldur_api_client/models/booking_offerings_list_field_item.py +2 -0
  166. waldur_api_client/models/booking_offerings_retrieve_field_item.py +2 -0
  167. waldur_api_client/models/booking_resource.py +37 -11
  168. waldur_api_client/models/booking_resource_renewal_date_type_0.py +53 -0
  169. waldur_api_client/models/booking_resources_list_field_item.py +1 -0
  170. waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -0
  171. waldur_api_client/models/call_managing_organisations_add_user_response_400.py +65 -0
  172. waldur_api_client/models/call_round.py +4 -4
  173. waldur_api_client/models/checklist_template.py +99 -0
  174. waldur_api_client/models/checklist_template_checklist.py +44 -0
  175. waldur_api_client/models/constance_settings.py +126 -45
  176. waldur_api_client/models/constance_settings_request.py +126 -45
  177. waldur_api_client/models/constance_settings_request_form.py +126 -45
  178. waldur_api_client/models/constance_settings_request_multipart.py +219 -71
  179. waldur_api_client/models/customer.py +9 -0
  180. waldur_api_client/models/customer_component_usage_policy.py +175 -0
  181. waldur_api_client/models/customer_component_usage_policy_request.py +102 -0
  182. waldur_api_client/models/customers_add_user_response_400.py +65 -0
  183. waldur_api_client/models/customers_list_field_item.py +1 -0
  184. waldur_api_client/models/customers_retrieve_field_item.py +1 -0
  185. waldur_api_client/models/deprecated_network_rbac_policy.py +137 -0
  186. waldur_api_client/models/deprecated_network_rbac_policy_request.py +78 -0
  187. waldur_api_client/models/discount_config_request.py +91 -0
  188. waldur_api_client/models/discounts_update_request.py +65 -0
  189. waldur_api_client/models/discounts_update_request_discounts.py +57 -0
  190. waldur_api_client/models/event_types_enum.py +1 -0
  191. waldur_api_client/models/issue.py +0 -25
  192. waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +1 -0
  193. waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +1 -0
  194. waldur_api_client/models/marketplace_orders_count_state_item.py +1 -0
  195. waldur_api_client/models/marketplace_orders_list_field_item.py +2 -0
  196. waldur_api_client/models/marketplace_orders_list_state_item.py +1 -0
  197. waldur_api_client/models/marketplace_orders_retrieve_field_item.py +2 -0
  198. waldur_api_client/models/marketplace_provider_offerings_add_user_response_400.py +65 -0
  199. waldur_api_client/models/marketplace_provider_offerings_list_course_accounts_retrieve_field_item.py +2 -0
  200. waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +2 -0
  201. waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +2 -0
  202. waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +2 -0
  203. waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +2 -0
  204. waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +2 -0
  205. waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +2 -0
  206. waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -0
  207. waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -0
  208. waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -0
  209. waldur_api_client/models/marketplace_public_offerings_list_field_item.py +2 -0
  210. waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +2 -0
  211. waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -0
  212. waldur_api_client/models/marketplace_resources_list_field_item.py +1 -0
  213. waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -0
  214. waldur_api_client/models/marketplace_service_providers_add_user_response_400.py +65 -0
  215. waldur_api_client/models/marketplace_site_agent_services_count_state_item.py +10 -0
  216. waldur_api_client/models/marketplace_site_agent_services_list_state_item.py +10 -0
  217. waldur_api_client/models/marketplace_software_catalogs_count_o_item.py +15 -0
  218. waldur_api_client/models/marketplace_software_catalogs_list_o_item.py +15 -0
  219. waldur_api_client/models/marketplace_software_packages_count_o_item.py +17 -0
  220. waldur_api_client/models/marketplace_software_packages_list_o_item.py +17 -0
  221. waldur_api_client/models/marketplace_software_targets_count_o_item.py +15 -0
  222. waldur_api_client/models/marketplace_software_targets_list_o_item.py +15 -0
  223. waldur_api_client/models/marketplace_software_versions_count_o_item.py +15 -0
  224. waldur_api_client/models/marketplace_software_versions_list_o_item.py +15 -0
  225. waldur_api_client/models/merged_plugin_options.py +65 -8
  226. waldur_api_client/models/merged_plugin_options_request.py +65 -8
  227. waldur_api_client/models/nested_agent_processor.py +154 -0
  228. waldur_api_client/models/nested_agent_service.py +134 -0
  229. waldur_api_client/models/nested_agent_service_request.py +90 -0
  230. waldur_api_client/models/nested_customer_usage_policy_component.py +103 -0
  231. waldur_api_client/models/nested_customer_usage_policy_component_request.py +87 -0
  232. waldur_api_client/models/nested_partition.py +412 -0
  233. waldur_api_client/models/nested_partition_request.py +397 -0
  234. waldur_api_client/models/nested_plan_component.py +155 -0
  235. waldur_api_client/models/nested_plan_component_request.py +128 -0
  236. waldur_api_client/models/nested_round.py +5 -5
  237. waldur_api_client/models/nested_software_catalog.py +134 -0
  238. waldur_api_client/models/nested_software_catalog_catalog.py +86 -0
  239. waldur_api_client/models/nested_software_catalog_partition.py +86 -0
  240. waldur_api_client/models/nested_software_catalog_request.py +68 -0
  241. waldur_api_client/models/nested_software_target.py +84 -0
  242. waldur_api_client/models/nested_software_target_request.py +75 -0
  243. waldur_api_client/models/nested_software_version.py +124 -0
  244. waldur_api_client/models/nested_software_version_request.py +93 -0
  245. waldur_api_client/models/network_rbac_policy_request.py +8 -0
  246. waldur_api_client/models/notification.py +9 -9
  247. waldur_api_client/models/{notification_context_fields.py → notification_context_schema.py} +6 -6
  248. waldur_api_client/models/notification_template_detail_serializers.py +9 -3
  249. waldur_api_client/models/observable_object_type_enum.py +14 -0
  250. waldur_api_client/models/offering.py +42 -0
  251. waldur_api_client/models/offering_component.py +79 -0
  252. waldur_api_client/models/offering_component_request.py +80 -0
  253. waldur_api_client/models/offering_create.py +36 -0
  254. waldur_api_client/models/offering_partition.py +440 -0
  255. waldur_api_client/models/offering_partition_request.py +406 -0
  256. waldur_api_client/models/offering_software_catalog.py +176 -0
  257. waldur_api_client/models/offering_software_catalog_request.py +118 -0
  258. waldur_api_client/models/onboarding_company_validation_request_request.py +88 -0
  259. waldur_api_client/models/onboarding_justification.py +212 -0
  260. waldur_api_client/models/onboarding_justification_create_request.py +71 -0
  261. waldur_api_client/models/onboarding_justification_documentation.py +108 -0
  262. waldur_api_client/models/onboarding_justification_documentation_request.py +84 -0
  263. waldur_api_client/models/onboarding_justification_documentation_request_form.py +84 -0
  264. waldur_api_client/models/onboarding_justification_documentation_request_multipart.py +98 -0
  265. waldur_api_client/models/onboarding_justification_request.py +89 -0
  266. waldur_api_client/models/onboarding_justification_review_request.py +59 -0
  267. waldur_api_client/models/onboarding_verification.py +250 -0
  268. waldur_api_client/models/onboarding_verification_request.py +128 -0
  269. waldur_api_client/models/onboarding_verification_status_enum.py +12 -0
  270. waldur_api_client/models/open_stack_create_floating_ip_request.py +20 -1
  271. waldur_api_client/models/order_backend_id_request.py +59 -0
  272. waldur_api_client/models/order_create.py +4 -4
  273. waldur_api_client/models/order_details.py +43 -11
  274. waldur_api_client/models/order_state.py +1 -0
  275. waldur_api_client/models/patched_customer_component_usage_policy_request.py +104 -0
  276. waldur_api_client/models/patched_network_rbac_policy_request.py +85 -0
  277. waldur_api_client/models/patched_offering_partition_request.py +412 -0
  278. waldur_api_client/models/patched_offering_software_catalog_update_request.py +131 -0
  279. waldur_api_client/models/patched_onboarding_justification_request.py +88 -0
  280. waldur_api_client/models/patched_onboarding_verification_request.py +128 -0
  281. waldur_api_client/models/patched_project_credit_request.py +13 -0
  282. waldur_api_client/models/patched_project_request.py +10 -2
  283. waldur_api_client/models/patched_project_request_form.py +10 -2
  284. waldur_api_client/models/patched_project_request_multipart.py +13 -2
  285. waldur_api_client/models/patched_software_catalog_request.py +86 -0
  286. waldur_api_client/models/patched_software_package_request.py +86 -0
  287. waldur_api_client/models/plan_component.py +40 -0
  288. waldur_api_client/models/project.py +37 -2
  289. waldur_api_client/models/project_credit.py +13 -0
  290. waldur_api_client/models/project_credit_request.py +13 -0
  291. waldur_api_client/models/project_recovery_request.py +70 -0
  292. waldur_api_client/models/project_request.py +10 -2
  293. waldur_api_client/models/project_request_form.py +10 -2
  294. waldur_api_client/models/project_request_multipart.py +13 -2
  295. waldur_api_client/models/project_user.py +21 -4
  296. waldur_api_client/models/projects_add_user_response_400.py +65 -0
  297. waldur_api_client/models/projects_list_field_item.py +4 -0
  298. waldur_api_client/models/projects_move_project_response_400.py +65 -0
  299. waldur_api_client/models/projects_retrieve_field_item.py +4 -0
  300. waldur_api_client/models/proposal_proposals_add_user_response_400.py +65 -0
  301. waldur_api_client/models/proposal_protected_calls_add_user_response_400.py +65 -0
  302. waldur_api_client/models/protected_round.py +4 -4
  303. waldur_api_client/models/provider_offering_details.py +42 -0
  304. waldur_api_client/models/provider_plan_details.py +18 -0
  305. waldur_api_client/models/public_offering_details.py +42 -0
  306. waldur_api_client/models/question.py +102 -0
  307. waldur_api_client/models/question_options.py +79 -0
  308. waldur_api_client/models/remote_resource_order_remote_state_enum.py +1 -0
  309. waldur_api_client/models/{set_offerings_username.py → remove_partition_request.py} +11 -19
  310. waldur_api_client/models/remove_software_catalog_request.py +60 -0
  311. waldur_api_client/models/resource.py +37 -11
  312. waldur_api_client/models/resource_downscaled_request.py +59 -0
  313. waldur_api_client/models/resource_paused_request.py +59 -0
  314. waldur_api_client/models/resource_renew_request.py +83 -0
  315. waldur_api_client/models/resource_renew_request_limits.py +44 -0
  316. waldur_api_client/models/resource_renewal_date_type_0.py +53 -0
  317. waldur_api_client/models/resource_restrict_member_access_request.py +59 -0
  318. waldur_api_client/models/{status_enum.py → round_status.py} +1 -1
  319. waldur_api_client/models/service_provider_checklist_summary.py +98 -0
  320. waldur_api_client/models/software_catalog.py +130 -0
  321. waldur_api_client/models/software_catalog_request.py +87 -0
  322. waldur_api_client/models/software_catalog_uuid.py +60 -0
  323. waldur_api_client/models/software_package.py +168 -0
  324. waldur_api_client/models/software_package_request.py +87 -0
  325. waldur_api_client/models/software_target.py +110 -0
  326. waldur_api_client/models/software_version.py +135 -0
  327. waldur_api_client/models/time_series_to_s_data.py +69 -0
  328. waldur_api_client/models/to_s_consent_dashboard.py +155 -0
  329. waldur_api_client/models/update_offering_component_request.py +79 -0
  330. waldur_api_client/models/user.py +20 -0
  331. waldur_api_client/models/users_list_field_item.py +1 -0
  332. waldur_api_client/models/users_me_retrieve_field_item.py +1 -0
  333. waldur_api_client/models/users_retrieve_field_item.py +1 -0
  334. waldur_api_client/models/validation_decision_enum.py +10 -0
  335. waldur_api_client/models/validation_method_enum.py +8 -0
  336. waldur_api_client/models/version_adoption.py +67 -0
  337. {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.5.dist-info}/METADATA +1 -1
  338. {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.5.dist-info}/RECORD +340 -123
  339. waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +0 -36
  340. {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.5.dist-info}/WHEEL +0 -0
  341. {waldur_api_client-7.8.3.dist-info → waldur_api_client-7.8.5.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,88 @@
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="OnboardingCompanyValidationRequestRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class OnboardingCompanyValidationRequestRequest:
14
+ """
15
+ Attributes:
16
+ country (str): ISO country code (e.g., 'EE' for Estonia)
17
+ legal_person_identifier (str): Official company registration code
18
+ legal_name (Union[Unset, str]): Company name (optional, for reference)
19
+ user_submitted_customer_metadata (Union[Unset, Any]): Optional customer metadata for manual verification cases.
20
+ Should contain valid Customer model fields.
21
+ """
22
+
23
+ country: str
24
+ legal_person_identifier: str
25
+ legal_name: Union[Unset, str] = UNSET
26
+ user_submitted_customer_metadata: Union[Unset, Any] = UNSET
27
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
28
+
29
+ def to_dict(self) -> dict[str, Any]:
30
+ country = self.country
31
+
32
+ legal_person_identifier = self.legal_person_identifier
33
+
34
+ legal_name = self.legal_name
35
+
36
+ user_submitted_customer_metadata = self.user_submitted_customer_metadata
37
+
38
+ field_dict: dict[str, Any] = {}
39
+ field_dict.update(self.additional_properties)
40
+ field_dict.update(
41
+ {
42
+ "country": country,
43
+ "legal_person_identifier": legal_person_identifier,
44
+ }
45
+ )
46
+ if legal_name is not UNSET:
47
+ field_dict["legal_name"] = legal_name
48
+ if user_submitted_customer_metadata is not UNSET:
49
+ field_dict["user_submitted_customer_metadata"] = user_submitted_customer_metadata
50
+
51
+ return field_dict
52
+
53
+ @classmethod
54
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
55
+ d = dict(src_dict)
56
+ country = d.pop("country")
57
+
58
+ legal_person_identifier = d.pop("legal_person_identifier")
59
+
60
+ legal_name = d.pop("legal_name", UNSET)
61
+
62
+ user_submitted_customer_metadata = d.pop("user_submitted_customer_metadata", UNSET)
63
+
64
+ onboarding_company_validation_request_request = cls(
65
+ country=country,
66
+ legal_person_identifier=legal_person_identifier,
67
+ legal_name=legal_name,
68
+ user_submitted_customer_metadata=user_submitted_customer_metadata,
69
+ )
70
+
71
+ onboarding_company_validation_request_request.additional_properties = d
72
+ return onboarding_company_validation_request_request
73
+
74
+ @property
75
+ def additional_keys(self) -> list[str]:
76
+ return list(self.additional_properties.keys())
77
+
78
+ def __getitem__(self, key: str) -> Any:
79
+ return self.additional_properties[key]
80
+
81
+ def __setitem__(self, key: str, value: Any) -> None:
82
+ self.additional_properties[key] = value
83
+
84
+ def __delitem__(self, key: str) -> None:
85
+ del self.additional_properties[key]
86
+
87
+ def __contains__(self, key: str) -> bool:
88
+ return key in self.additional_properties
@@ -0,0 +1,212 @@
1
+ import datetime
2
+ from collections.abc import Mapping
3
+ from typing import TYPE_CHECKING, 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.validation_decision_enum import ValidationDecisionEnum
11
+ from ..types import UNSET, Unset
12
+
13
+ if TYPE_CHECKING:
14
+ from ..models.onboarding_justification_documentation import OnboardingJustificationDocumentation
15
+
16
+
17
+ T = TypeVar("T", bound="OnboardingJustification")
18
+
19
+
20
+ @_attrs_define
21
+ class OnboardingJustification:
22
+ """
23
+ Attributes:
24
+ uuid (UUID):
25
+ verification (int):
26
+ user (int):
27
+ legal_person_identifier (str):
28
+ legal_name (str):
29
+ validated_by (Union[None, int]):
30
+ validated_at (Union[None, datetime.datetime]):
31
+ validation_decision (ValidationDecisionEnum):
32
+ staff_notes (str): Administrator notes on the review decision
33
+ supporting_documentation (list['OnboardingJustificationDocumentation']):
34
+ created (datetime.datetime):
35
+ modified (datetime.datetime):
36
+ user_justification (Union[None, Unset, str]): User's explanation for why they should be authorized
37
+ """
38
+
39
+ uuid: UUID
40
+ verification: int
41
+ user: int
42
+ legal_person_identifier: str
43
+ legal_name: str
44
+ validated_by: Union[None, int]
45
+ validated_at: Union[None, datetime.datetime]
46
+ validation_decision: ValidationDecisionEnum
47
+ staff_notes: str
48
+ supporting_documentation: list["OnboardingJustificationDocumentation"]
49
+ created: datetime.datetime
50
+ modified: datetime.datetime
51
+ user_justification: Union[None, Unset, str] = UNSET
52
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
53
+
54
+ def to_dict(self) -> dict[str, Any]:
55
+ uuid = str(self.uuid)
56
+
57
+ verification = self.verification
58
+
59
+ user = self.user
60
+
61
+ legal_person_identifier = self.legal_person_identifier
62
+
63
+ legal_name = self.legal_name
64
+
65
+ validated_by: Union[None, int]
66
+ validated_by = self.validated_by
67
+
68
+ validated_at: Union[None, str]
69
+ if isinstance(self.validated_at, datetime.datetime):
70
+ validated_at = self.validated_at.isoformat()
71
+ else:
72
+ validated_at = self.validated_at
73
+
74
+ validation_decision = self.validation_decision.value
75
+
76
+ staff_notes = self.staff_notes
77
+
78
+ supporting_documentation = []
79
+ for supporting_documentation_item_data in self.supporting_documentation:
80
+ supporting_documentation_item = supporting_documentation_item_data.to_dict()
81
+ supporting_documentation.append(supporting_documentation_item)
82
+
83
+ created = self.created.isoformat()
84
+
85
+ modified = self.modified.isoformat()
86
+
87
+ user_justification: Union[None, Unset, str]
88
+ if isinstance(self.user_justification, Unset):
89
+ user_justification = UNSET
90
+ else:
91
+ user_justification = self.user_justification
92
+
93
+ field_dict: dict[str, Any] = {}
94
+ field_dict.update(self.additional_properties)
95
+ field_dict.update(
96
+ {
97
+ "uuid": uuid,
98
+ "verification": verification,
99
+ "user": user,
100
+ "legal_person_identifier": legal_person_identifier,
101
+ "legal_name": legal_name,
102
+ "validated_by": validated_by,
103
+ "validated_at": validated_at,
104
+ "validation_decision": validation_decision,
105
+ "staff_notes": staff_notes,
106
+ "supporting_documentation": supporting_documentation,
107
+ "created": created,
108
+ "modified": modified,
109
+ }
110
+ )
111
+ if user_justification is not UNSET:
112
+ field_dict["user_justification"] = user_justification
113
+
114
+ return field_dict
115
+
116
+ @classmethod
117
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
118
+ from ..models.onboarding_justification_documentation import OnboardingJustificationDocumentation
119
+
120
+ d = dict(src_dict)
121
+ uuid = UUID(d.pop("uuid"))
122
+
123
+ verification = d.pop("verification")
124
+
125
+ user = d.pop("user")
126
+
127
+ legal_person_identifier = d.pop("legal_person_identifier")
128
+
129
+ legal_name = d.pop("legal_name")
130
+
131
+ def _parse_validated_by(data: object) -> Union[None, int]:
132
+ if data is None:
133
+ return data
134
+ return cast(Union[None, int], data)
135
+
136
+ validated_by = _parse_validated_by(d.pop("validated_by"))
137
+
138
+ def _parse_validated_at(data: object) -> Union[None, datetime.datetime]:
139
+ if data is None:
140
+ return data
141
+ try:
142
+ if not isinstance(data, str):
143
+ raise TypeError()
144
+ validated_at_type_0 = isoparse(data)
145
+
146
+ return validated_at_type_0
147
+ except: # noqa: E722
148
+ pass
149
+ return cast(Union[None, datetime.datetime], data)
150
+
151
+ validated_at = _parse_validated_at(d.pop("validated_at"))
152
+
153
+ validation_decision = ValidationDecisionEnum(d.pop("validation_decision"))
154
+
155
+ staff_notes = d.pop("staff_notes")
156
+
157
+ supporting_documentation = []
158
+ _supporting_documentation = d.pop("supporting_documentation")
159
+ for supporting_documentation_item_data in _supporting_documentation:
160
+ supporting_documentation_item = OnboardingJustificationDocumentation.from_dict(
161
+ supporting_documentation_item_data
162
+ )
163
+
164
+ supporting_documentation.append(supporting_documentation_item)
165
+
166
+ created = isoparse(d.pop("created"))
167
+
168
+ modified = isoparse(d.pop("modified"))
169
+
170
+ def _parse_user_justification(data: object) -> Union[None, Unset, str]:
171
+ if data is None:
172
+ return data
173
+ if isinstance(data, Unset):
174
+ return data
175
+ return cast(Union[None, Unset, str], data)
176
+
177
+ user_justification = _parse_user_justification(d.pop("user_justification", UNSET))
178
+
179
+ onboarding_justification = cls(
180
+ uuid=uuid,
181
+ verification=verification,
182
+ user=user,
183
+ legal_person_identifier=legal_person_identifier,
184
+ legal_name=legal_name,
185
+ validated_by=validated_by,
186
+ validated_at=validated_at,
187
+ validation_decision=validation_decision,
188
+ staff_notes=staff_notes,
189
+ supporting_documentation=supporting_documentation,
190
+ created=created,
191
+ modified=modified,
192
+ user_justification=user_justification,
193
+ )
194
+
195
+ onboarding_justification.additional_properties = d
196
+ return onboarding_justification
197
+
198
+ @property
199
+ def additional_keys(self) -> list[str]:
200
+ return list(self.additional_properties.keys())
201
+
202
+ def __getitem__(self, key: str) -> Any:
203
+ return self.additional_properties[key]
204
+
205
+ def __setitem__(self, key: str, value: Any) -> None:
206
+ self.additional_properties[key] = value
207
+
208
+ def __delitem__(self, key: str) -> None:
209
+ del self.additional_properties[key]
210
+
211
+ def __contains__(self, key: str) -> bool:
212
+ return key in self.additional_properties
@@ -0,0 +1,71 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+ from uuid import UUID
4
+
5
+ from attrs import define as _attrs_define
6
+ from attrs import field as _attrs_field
7
+
8
+ from ..types import UNSET, Unset
9
+
10
+ T = TypeVar("T", bound="OnboardingJustificationCreateRequest")
11
+
12
+
13
+ @_attrs_define
14
+ class OnboardingJustificationCreateRequest:
15
+ """
16
+ Attributes:
17
+ verification_uuid (UUID): UUID of the OnboardingVerification to justify
18
+ user_justification (Union[Unset, str]): User's explanation for why they should be authorized
19
+ """
20
+
21
+ verification_uuid: UUID
22
+ user_justification: Union[Unset, str] = UNSET
23
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
24
+
25
+ def to_dict(self) -> dict[str, Any]:
26
+ verification_uuid = str(self.verification_uuid)
27
+
28
+ user_justification = self.user_justification
29
+
30
+ field_dict: dict[str, Any] = {}
31
+ field_dict.update(self.additional_properties)
32
+ field_dict.update(
33
+ {
34
+ "verification_uuid": verification_uuid,
35
+ }
36
+ )
37
+ if user_justification is not UNSET:
38
+ field_dict["user_justification"] = user_justification
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
+ verification_uuid = UUID(d.pop("verification_uuid"))
46
+
47
+ user_justification = d.pop("user_justification", UNSET)
48
+
49
+ onboarding_justification_create_request = cls(
50
+ verification_uuid=verification_uuid,
51
+ user_justification=user_justification,
52
+ )
53
+
54
+ onboarding_justification_create_request.additional_properties = d
55
+ return onboarding_justification_create_request
56
+
57
+ @property
58
+ def additional_keys(self) -> list[str]:
59
+ return list(self.additional_properties.keys())
60
+
61
+ def __getitem__(self, key: str) -> Any:
62
+ return self.additional_properties[key]
63
+
64
+ def __setitem__(self, key: str, value: Any) -> None:
65
+ self.additional_properties[key] = value
66
+
67
+ def __delitem__(self, key: str) -> None:
68
+ del self.additional_properties[key]
69
+
70
+ def __contains__(self, key: str) -> bool:
71
+ return key in self.additional_properties
@@ -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