solvimon-python-sdk 0.0.4b0__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.
Files changed (1196) hide show
  1. solvimon_python_sdk/__init__.py +2413 -0
  2. solvimon_python_sdk/api/__init__.py +74 -0
  3. solvimon_python_sdk/api/alert_rules_api.py +1700 -0
  4. solvimon_python_sdk/api/alerts_api.py +1038 -0
  5. solvimon_python_sdk/api/api_keys_api.py +1973 -0
  6. solvimon_python_sdk/api/approval_policy_api.py +2573 -0
  7. solvimon_python_sdk/api/approval_request_api.py +2673 -0
  8. solvimon_python_sdk/api/attachments_api.py +1329 -0
  9. solvimon_python_sdk/api/audit_records_api.py +786 -0
  10. solvimon_python_sdk/api/authentication_api.py +2714 -0
  11. solvimon_python_sdk/api/authentication_providers_api.py +1638 -0
  12. solvimon_python_sdk/api/billing_entities_api.py +1698 -0
  13. solvimon_python_sdk/api/bulk_actions_api.py +2150 -0
  14. solvimon_python_sdk/api/contacts_api.py +2036 -0
  15. solvimon_python_sdk/api/coupons_api.py +3059 -0
  16. solvimon_python_sdk/api/credit_types_api.py +2597 -0
  17. solvimon_python_sdk/api/custom_fields_api.py +1724 -0
  18. solvimon_python_sdk/api/customers_api.py +4667 -0
  19. solvimon_python_sdk/api/documents_api.py +1274 -0
  20. solvimon_python_sdk/api/features_api.py +2003 -0
  21. solvimon_python_sdk/api/file_processing_settings_api.py +991 -0
  22. solvimon_python_sdk/api/files_api.py +1716 -0
  23. solvimon_python_sdk/api/ingest_api.py +5989 -0
  24. solvimon_python_sdk/api/integrations_api.py +3297 -0
  25. solvimon_python_sdk/api/invoices_api.py +9743 -0
  26. solvimon_python_sdk/api/meter_properties_api.py +1648 -0
  27. solvimon_python_sdk/api/meter_property_variables_api.py +2473 -0
  28. solvimon_python_sdk/api/meter_value_calculations_api.py +1688 -0
  29. solvimon_python_sdk/api/meter_values_api.py +1648 -0
  30. solvimon_python_sdk/api/meters_api.py +1990 -0
  31. solvimon_python_sdk/api/payment_acceptors_api.py +1971 -0
  32. solvimon_python_sdk/api/payment_methods_api.py +2370 -0
  33. solvimon_python_sdk/api/payment_schedules_api.py +2641 -0
  34. solvimon_python_sdk/api/payments_api.py +3133 -0
  35. solvimon_python_sdk/api/platforms_api.py +1584 -0
  36. solvimon_python_sdk/api/portal_urls_api.py +1703 -0
  37. solvimon_python_sdk/api/pricing_groups_api.py +1290 -0
  38. solvimon_python_sdk/api/pricing_plan_groups_api.py +2579 -0
  39. solvimon_python_sdk/api/pricing_plan_schedules_api.py +3507 -0
  40. solvimon_python_sdk/api/pricing_plan_subscription_groups_api.py +1736 -0
  41. solvimon_python_sdk/api/pricing_plan_subscriptions_api.py +4918 -0
  42. solvimon_python_sdk/api/pricing_plan_versions_api.py +1629 -0
  43. solvimon_python_sdk/api/pricing_plans_api.py +2475 -0
  44. solvimon_python_sdk/api/pricings_api.py +1008 -0
  45. solvimon_python_sdk/api/product_categories_api.py +2339 -0
  46. solvimon_python_sdk/api/product_items_api.py +3443 -0
  47. solvimon_python_sdk/api/products_api.py +3478 -0
  48. solvimon_python_sdk/api/promotion_codes_api.py +2727 -0
  49. solvimon_python_sdk/api/quote_templates_api.py +1987 -0
  50. solvimon_python_sdk/api/quote_versions_api.py +3908 -0
  51. solvimon_python_sdk/api/quotes_api.py +2743 -0
  52. solvimon_python_sdk/api/report_configurations_api.py +1356 -0
  53. solvimon_python_sdk/api/report_definitions_api.py +391 -0
  54. solvimon_python_sdk/api/report_subscriptions_api.py +1996 -0
  55. solvimon_python_sdk/api/reports_api.py +4754 -0
  56. solvimon_python_sdk/api/reprocess_api.py +1092 -0
  57. solvimon_python_sdk/api/roles_api.py +1701 -0
  58. solvimon_python_sdk/api/seat_assignments_api.py +1732 -0
  59. solvimon_python_sdk/api/signature_requests_api.py +992 -0
  60. solvimon_python_sdk/api/tax_id_types_api.py +343 -0
  61. solvimon_python_sdk/api/teams_api.py +1322 -0
  62. solvimon_python_sdk/api/usage_limits_api.py +2306 -0
  63. solvimon_python_sdk/api/users_api.py +3961 -0
  64. solvimon_python_sdk/api/wallet_grants_api.py +1076 -0
  65. solvimon_python_sdk/api/wallet_types_api.py +2576 -0
  66. solvimon_python_sdk/api/wallets_api.py +4168 -0
  67. solvimon_python_sdk/api/webhook_events_api.py +1042 -0
  68. solvimon_python_sdk/api/webhooks_api.py +3557 -0
  69. solvimon_python_sdk/api/workflow_action_executions_api.py +1409 -0
  70. solvimon_python_sdk/api/workflow_actions_api.py +1630 -0
  71. solvimon_python_sdk/api/workflow_triggers_api.py +1451 -0
  72. solvimon_python_sdk/api/workflows_api.py +3259 -0
  73. solvimon_python_sdk/api_client.py +843 -0
  74. solvimon_python_sdk/api_response.py +21 -0
  75. solvimon_python_sdk/configuration.py +688 -0
  76. solvimon_python_sdk/exceptions.py +219 -0
  77. solvimon_python_sdk/models/__init__.py +1130 -0
  78. solvimon_python_sdk/models/account_membership_representation.py +132 -0
  79. solvimon_python_sdk/models/account_membership_representation_create_request.py +132 -0
  80. solvimon_python_sdk/models/account_membership_representation_update_request.py +132 -0
  81. solvimon_python_sdk/models/account_number_and_bic.py +124 -0
  82. solvimon_python_sdk/models/account_representation.py +101 -0
  83. solvimon_python_sdk/models/address.py +109 -0
  84. solvimon_python_sdk/models/address_create_request.py +109 -0
  85. solvimon_python_sdk/models/address_update_request.py +109 -0
  86. solvimon_python_sdk/models/adyen_auto_rescue.py +95 -0
  87. solvimon_python_sdk/models/adyen_direct_payment_context.py +95 -0
  88. solvimon_python_sdk/models/adyen_integration_details.py +89 -0
  89. solvimon_python_sdk/models/adyen_issuer.py +91 -0
  90. solvimon_python_sdk/models/adyen_payment_action.py +91 -0
  91. solvimon_python_sdk/models/adyen_payment_gateway_integration.py +152 -0
  92. solvimon_python_sdk/models/adyen_payment_method_option.py +110 -0
  93. solvimon_python_sdk/models/adyen_required_action.py +97 -0
  94. solvimon_python_sdk/models/adyen_tokenization_request.py +97 -0
  95. solvimon_python_sdk/models/adyen_tokenization_request_create_request.py +97 -0
  96. solvimon_python_sdk/models/adyen_verify_details.py +95 -0
  97. solvimon_python_sdk/models/adyen_verify_details_create_request.py +95 -0
  98. solvimon_python_sdk/models/agent_context.py +100 -0
  99. solvimon_python_sdk/models/agent_context_create_request.py +100 -0
  100. solvimon_python_sdk/models/agent_context_update_request.py +100 -0
  101. solvimon_python_sdk/models/alert.py +141 -0
  102. solvimon_python_sdk/models/alert_create_request.py +138 -0
  103. solvimon_python_sdk/models/alert_data.py +99 -0
  104. solvimon_python_sdk/models/alert_data_create_request.py +99 -0
  105. solvimon_python_sdk/models/alert_data_entitlement.py +105 -0
  106. solvimon_python_sdk/models/alert_data_invoice.py +95 -0
  107. solvimon_python_sdk/models/alert_data_invoice_overdue.py +96 -0
  108. solvimon_python_sdk/models/alert_data_value.py +95 -0
  109. solvimon_python_sdk/models/alert_response_wrapper.py +108 -0
  110. solvimon_python_sdk/models/alert_rule.py +193 -0
  111. solvimon_python_sdk/models/alert_rule_create_request.py +187 -0
  112. solvimon_python_sdk/models/alert_rule_create_request_event.py +193 -0
  113. solvimon_python_sdk/models/alert_rule_entitlement.py +115 -0
  114. solvimon_python_sdk/models/alert_rule_entitlement_create_request.py +115 -0
  115. solvimon_python_sdk/models/alert_rule_entitlement_update_request.py +115 -0
  116. solvimon_python_sdk/models/alert_rule_invoice.py +105 -0
  117. solvimon_python_sdk/models/alert_rule_invoice_create_request.py +105 -0
  118. solvimon_python_sdk/models/alert_rule_invoice_overdue.py +105 -0
  119. solvimon_python_sdk/models/alert_rule_invoice_update_request.py +105 -0
  120. solvimon_python_sdk/models/alert_rule_response_wrapper.py +108 -0
  121. solvimon_python_sdk/models/alert_rule_update_request.py +193 -0
  122. solvimon_python_sdk/models/amount.py +112 -0
  123. solvimon_python_sdk/models/amount_create_request.py +112 -0
  124. solvimon_python_sdk/models/amount_update_request.py +112 -0
  125. solvimon_python_sdk/models/api_error.py +123 -0
  126. solvimon_python_sdk/models/api_key.py +157 -0
  127. solvimon_python_sdk/models/api_key_create_request.py +157 -0
  128. solvimon_python_sdk/models/api_key_paginated_response_wrapper.py +108 -0
  129. solvimon_python_sdk/models/api_key_update_request.py +157 -0
  130. solvimon_python_sdk/models/applied_coupon.py +109 -0
  131. solvimon_python_sdk/models/applied_coupon_update_request.py +109 -0
  132. solvimon_python_sdk/models/approval_group.py +98 -0
  133. solvimon_python_sdk/models/approval_policy.py +169 -0
  134. solvimon_python_sdk/models/approval_policy_approver.py +105 -0
  135. solvimon_python_sdk/models/approval_policy_billing_entity.py +89 -0
  136. solvimon_python_sdk/models/approval_policy_billing_period.py +89 -0
  137. solvimon_python_sdk/models/approval_policy_commitment.py +93 -0
  138. solvimon_python_sdk/models/approval_policy_create_request.py +160 -0
  139. solvimon_python_sdk/models/approval_policy_custom_field.py +91 -0
  140. solvimon_python_sdk/models/approval_policy_discount.py +95 -0
  141. solvimon_python_sdk/models/approval_policy_due_date.py +89 -0
  142. solvimon_python_sdk/models/approval_policy_payment_acceptor.py +89 -0
  143. solvimon_python_sdk/models/approval_policy_pricing.py +89 -0
  144. solvimon_python_sdk/models/approval_policy_rule.py +159 -0
  145. solvimon_python_sdk/models/approval_policy_rule_group.py +96 -0
  146. solvimon_python_sdk/models/approval_policy_rule_group_create_request.py +96 -0
  147. solvimon_python_sdk/models/approval_policy_rule_group_update_request.py +96 -0
  148. solvimon_python_sdk/models/approval_policy_update_request.py +169 -0
  149. solvimon_python_sdk/models/approval_policy_user.py +89 -0
  150. solvimon_python_sdk/models/approval_request.py +183 -0
  151. solvimon_python_sdk/models/approval_request_action_result.py +121 -0
  152. solvimon_python_sdk/models/approval_request_response_wrapper.py +108 -0
  153. solvimon_python_sdk/models/approvers.py +109 -0
  154. solvimon_python_sdk/models/approvers_create_request.py +109 -0
  155. solvimon_python_sdk/models/approvers_update_request.py +109 -0
  156. solvimon_python_sdk/models/ar_local.py +124 -0
  157. solvimon_python_sdk/models/attachment.py +115 -0
  158. solvimon_python_sdk/models/attachment_create_request.py +115 -0
  159. solvimon_python_sdk/models/attachment_response_wrapper.py +96 -0
  160. solvimon_python_sdk/models/audit_record.py +154 -0
  161. solvimon_python_sdk/models/audit_record_diff_entry.py +103 -0
  162. solvimon_python_sdk/models/audit_record_response_wrapper.py +108 -0
  163. solvimon_python_sdk/models/authentication_provider.py +138 -0
  164. solvimon_python_sdk/models/authentication_provider_create_request.py +135 -0
  165. solvimon_python_sdk/models/authentication_provider_request.py +91 -0
  166. solvimon_python_sdk/models/authentication_provider_request_create_request.py +91 -0
  167. solvimon_python_sdk/models/authentication_provider_response_wrapper.py +108 -0
  168. solvimon_python_sdk/models/authentication_provider_update_request.py +138 -0
  169. solvimon_python_sdk/models/authentication_settings.py +105 -0
  170. solvimon_python_sdk/models/authentication_settings_api_key.py +91 -0
  171. solvimon_python_sdk/models/authentication_settings_api_key_create_request.py +91 -0
  172. solvimon_python_sdk/models/authentication_settings_create_request.py +105 -0
  173. solvimon_python_sdk/models/authentication_settings_update_request.py +105 -0
  174. solvimon_python_sdk/models/authorize_payment_request.py +133 -0
  175. solvimon_python_sdk/models/authorize_payment_request_create_request.py +133 -0
  176. solvimon_python_sdk/models/auto_topup_config.py +135 -0
  177. solvimon_python_sdk/models/auto_topup_config_create_request.py +135 -0
  178. solvimon_python_sdk/models/auto_topup_config_response_wrapper.py +108 -0
  179. solvimon_python_sdk/models/auto_topup_threshold.py +99 -0
  180. solvimon_python_sdk/models/ava_tax_calculation_integration.py +89 -0
  181. solvimon_python_sdk/models/available_custom_field_column.py +95 -0
  182. solvimon_python_sdk/models/available_custom_field_column_create_request.py +95 -0
  183. solvimon_python_sdk/models/available_custom_field_column_update_request.py +95 -0
  184. solvimon_python_sdk/models/balance_platform_details.py +95 -0
  185. solvimon_python_sdk/models/bank_account.py +228 -0
  186. solvimon_python_sdk/models/bank_account_create_request.py +228 -0
  187. solvimon_python_sdk/models/big_query.py +99 -0
  188. solvimon_python_sdk/models/billing_entity.py +218 -0
  189. solvimon_python_sdk/models/billing_entity_create_request.py +215 -0
  190. solvimon_python_sdk/models/billing_entity_create_request_transaction.py +218 -0
  191. solvimon_python_sdk/models/billing_entity_response_wrapper.py +96 -0
  192. solvimon_python_sdk/models/billing_entity_update_request.py +218 -0
  193. solvimon_python_sdk/models/billing_period_option.py +95 -0
  194. solvimon_python_sdk/models/billing_period_settings.py +96 -0
  195. solvimon_python_sdk/models/billing_period_settings_create_request.py +96 -0
  196. solvimon_python_sdk/models/billing_period_settings_update_request.py +96 -0
  197. solvimon_python_sdk/models/br_local.py +124 -0
  198. solvimon_python_sdk/models/branding.py +108 -0
  199. solvimon_python_sdk/models/branding_update_request.py +108 -0
  200. solvimon_python_sdk/models/bulk_action_check.py +110 -0
  201. solvimon_python_sdk/models/bulk_action_item.py +109 -0
  202. solvimon_python_sdk/models/bulk_action_item_generated_resource.py +101 -0
  203. solvimon_python_sdk/models/bulk_action_item_resource.py +101 -0
  204. solvimon_python_sdk/models/bulk_action_item_response_wrapper.py +108 -0
  205. solvimon_python_sdk/models/bulk_action_request.py +111 -0
  206. solvimon_python_sdk/models/bulk_action_request_create_request.py +108 -0
  207. solvimon_python_sdk/models/bulk_action_response.py +115 -0
  208. solvimon_python_sdk/models/bulk_action_response_wrapper.py +108 -0
  209. solvimon_python_sdk/models/bulk_approval_request_action.py +89 -0
  210. solvimon_python_sdk/models/bulk_approval_request_action_create_request.py +89 -0
  211. solvimon_python_sdk/models/bulk_approval_request_action_response_wrapper.py +96 -0
  212. solvimon_python_sdk/models/captcha_request.py +91 -0
  213. solvimon_python_sdk/models/captcha_request_create_request.py +91 -0
  214. solvimon_python_sdk/models/charge.py +96 -0
  215. solvimon_python_sdk/models/charge_data_period.py +94 -0
  216. solvimon_python_sdk/models/charge_data_period_create_request.py +94 -0
  217. solvimon_python_sdk/models/charge_on_demand_payment_context.py +101 -0
  218. solvimon_python_sdk/models/charge_on_demand_payment_context_pricing_item.py +101 -0
  219. solvimon_python_sdk/models/charge_on_demand_pricing_item.py +103 -0
  220. solvimon_python_sdk/models/charge_on_demand_pricing_items.py +107 -0
  221. solvimon_python_sdk/models/charge_on_demand_pricing_items_create_request.py +107 -0
  222. solvimon_python_sdk/models/charge_on_demand_pricing_items_pricing_item_config.py +101 -0
  223. solvimon_python_sdk/models/charge_on_demand_pricing_items_pricing_item_config_create_request.py +101 -0
  224. solvimon_python_sdk/models/client_credentials.py +91 -0
  225. solvimon_python_sdk/models/client_credentials_create_request.py +91 -0
  226. solvimon_python_sdk/models/colors.py +112 -0
  227. solvimon_python_sdk/models/column_mapping.py +91 -0
  228. solvimon_python_sdk/models/commitment.py +123 -0
  229. solvimon_python_sdk/models/commitment_update_request.py +123 -0
  230. solvimon_python_sdk/models/configured_meter_value.py +104 -0
  231. solvimon_python_sdk/models/configured_meter_value_included_volume.py +104 -0
  232. solvimon_python_sdk/models/configured_meter_value_included_volume_update_request.py +104 -0
  233. solvimon_python_sdk/models/configured_meter_value_update_request.py +104 -0
  234. solvimon_python_sdk/models/contact.py +155 -0
  235. solvimon_python_sdk/models/contact_create_request.py +152 -0
  236. solvimon_python_sdk/models/contact_response_wrapper.py +108 -0
  237. solvimon_python_sdk/models/contact_update_request.py +155 -0
  238. solvimon_python_sdk/models/cost_prediction.py +129 -0
  239. solvimon_python_sdk/models/cost_prediction_create_request.py +129 -0
  240. solvimon_python_sdk/models/cost_prediction_details.py +128 -0
  241. solvimon_python_sdk/models/coupon.py +180 -0
  242. solvimon_python_sdk/models/coupon_create_request.py +174 -0
  243. solvimon_python_sdk/models/coupon_discount.py +119 -0
  244. solvimon_python_sdk/models/coupon_discount_create_request.py +119 -0
  245. solvimon_python_sdk/models/coupon_discount_update_request.py +119 -0
  246. solvimon_python_sdk/models/coupon_discount_usage.py +97 -0
  247. solvimon_python_sdk/models/coupon_duration.py +105 -0
  248. solvimon_python_sdk/models/coupon_duration_create_request.py +105 -0
  249. solvimon_python_sdk/models/coupon_duration_update_request.py +105 -0
  250. solvimon_python_sdk/models/coupon_limited_to.py +126 -0
  251. solvimon_python_sdk/models/coupon_limited_to_create_request.py +126 -0
  252. solvimon_python_sdk/models/coupon_limited_to_update_request.py +126 -0
  253. solvimon_python_sdk/models/coupon_redemption.py +127 -0
  254. solvimon_python_sdk/models/coupon_redemption_response_wrapper.py +108 -0
  255. solvimon_python_sdk/models/coupon_response_wrapper.py +108 -0
  256. solvimon_python_sdk/models/coupon_update_request.py +180 -0
  257. solvimon_python_sdk/models/create_payment_method_payment_context.py +89 -0
  258. solvimon_python_sdk/models/create_pricing_plan_schedule_payment_context.py +96 -0
  259. solvimon_python_sdk/models/credit_and_copy_invoice_request.py +103 -0
  260. solvimon_python_sdk/models/credit_and_copy_invoice_request_create_request.py +103 -0
  261. solvimon_python_sdk/models/credit_and_copy_invoice_response.py +93 -0
  262. solvimon_python_sdk/models/credit_invoice_group.py +104 -0
  263. solvimon_python_sdk/models/credit_invoice_group_create_request.py +104 -0
  264. solvimon_python_sdk/models/credit_invoice_line.py +95 -0
  265. solvimon_python_sdk/models/credit_invoice_period.py +104 -0
  266. solvimon_python_sdk/models/credit_invoice_period_create_request.py +104 -0
  267. solvimon_python_sdk/models/credit_type.py +158 -0
  268. solvimon_python_sdk/models/credit_type_create_request.py +158 -0
  269. solvimon_python_sdk/models/credit_type_response_wrapper.py +108 -0
  270. solvimon_python_sdk/models/credit_type_update_request.py +158 -0
  271. solvimon_python_sdk/models/credits.py +110 -0
  272. solvimon_python_sdk/models/credits_create_request.py +110 -0
  273. solvimon_python_sdk/models/crm_integrations.py +93 -0
  274. solvimon_python_sdk/models/crm_integrations_update_request.py +93 -0
  275. solvimon_python_sdk/models/currency.py +107 -0
  276. solvimon_python_sdk/models/custom_field.py +154 -0
  277. solvimon_python_sdk/models/custom_field_create_request.py +148 -0
  278. solvimon_python_sdk/models/custom_field_response_wrapper.py +108 -0
  279. solvimon_python_sdk/models/custom_field_update_request.py +154 -0
  280. solvimon_python_sdk/models/custom_field_value.py +116 -0
  281. solvimon_python_sdk/models/custom_field_value_create_request.py +116 -0
  282. solvimon_python_sdk/models/custom_field_value_update_request.py +116 -0
  283. solvimon_python_sdk/models/custom_tax_code.py +101 -0
  284. solvimon_python_sdk/models/customer.py +222 -0
  285. solvimon_python_sdk/models/customer_action_options.py +95 -0
  286. solvimon_python_sdk/models/customer_create_request.py +219 -0
  287. solvimon_python_sdk/models/customer_create_request_event.py +222 -0
  288. solvimon_python_sdk/models/customer_create_request_transaction.py +222 -0
  289. solvimon_python_sdk/models/customer_portal_url.py +99 -0
  290. solvimon_python_sdk/models/customer_portal_url_create_request.py +99 -0
  291. solvimon_python_sdk/models/customer_portal_url_update_request.py +99 -0
  292. solvimon_python_sdk/models/customer_references.py +93 -0
  293. solvimon_python_sdk/models/customer_references_create_request.py +93 -0
  294. solvimon_python_sdk/models/customer_references_update_request.py +93 -0
  295. solvimon_python_sdk/models/customer_response_wrapper.py +108 -0
  296. solvimon_python_sdk/models/customer_seller_details.py +89 -0
  297. solvimon_python_sdk/models/customer_seller_details_create_request.py +89 -0
  298. solvimon_python_sdk/models/customer_seller_details_update_request.py +89 -0
  299. solvimon_python_sdk/models/customer_update_request.py +222 -0
  300. solvimon_python_sdk/models/customer_update_request_transaction.py +222 -0
  301. solvimon_python_sdk/models/customer_wallet_balance_status.py +118 -0
  302. solvimon_python_sdk/models/customer_wallet_balances_status.py +102 -0
  303. solvimon_python_sdk/models/data_export_integration.py +125 -0
  304. solvimon_python_sdk/models/data_export_integration_create_request.py +125 -0
  305. solvimon_python_sdk/models/data_export_integration_update_request.py +125 -0
  306. solvimon_python_sdk/models/default_portal_url_settings.py +93 -0
  307. solvimon_python_sdk/models/default_portal_url_settings_update_request.py +93 -0
  308. solvimon_python_sdk/models/default_value.py +91 -0
  309. solvimon_python_sdk/models/delete_invoice_group.py +98 -0
  310. solvimon_python_sdk/models/delete_invoice_line.py +89 -0
  311. solvimon_python_sdk/models/delete_invoice_period.py +98 -0
  312. solvimon_python_sdk/models/delete_invoice_period_create_request.py +98 -0
  313. solvimon_python_sdk/models/direct_auto_rescue.py +95 -0
  314. solvimon_python_sdk/models/direct_payment_context.py +93 -0
  315. solvimon_python_sdk/models/discount.py +159 -0
  316. solvimon_python_sdk/models/discount_condition.py +105 -0
  317. solvimon_python_sdk/models/discount_condition_value.py +93 -0
  318. solvimon_python_sdk/models/discount_update_request.py +159 -0
  319. solvimon_python_sdk/models/display_config.py +95 -0
  320. solvimon_python_sdk/models/document.py +126 -0
  321. solvimon_python_sdk/models/document_action_settings.py +99 -0
  322. solvimon_python_sdk/models/document_create_request.py +126 -0
  323. solvimon_python_sdk/models/document_number_configuration.py +106 -0
  324. solvimon_python_sdk/models/document_number_configuration_reset_period.py +101 -0
  325. solvimon_python_sdk/models/download_settings.py +93 -0
  326. solvimon_python_sdk/models/download_settings_create_request.py +93 -0
  327. solvimon_python_sdk/models/download_settings_update_request.py +93 -0
  328. solvimon_python_sdk/models/download_url.py +103 -0
  329. solvimon_python_sdk/models/due_date.py +105 -0
  330. solvimon_python_sdk/models/due_date_update_request.py +105 -0
  331. solvimon_python_sdk/models/duplicate.py +91 -0
  332. solvimon_python_sdk/models/e_invoice.py +116 -0
  333. solvimon_python_sdk/models/e_invoice_create_request.py +116 -0
  334. solvimon_python_sdk/models/e_invoice_file_format.py +95 -0
  335. solvimon_python_sdk/models/e_invoice_status.py +99 -0
  336. solvimon_python_sdk/models/e_invoice_update_request.py +116 -0
  337. solvimon_python_sdk/models/e_invoicing_condition.py +103 -0
  338. solvimon_python_sdk/models/e_invoicing_condition_group.py +96 -0
  339. solvimon_python_sdk/models/e_invoicing_integration.py +108 -0
  340. solvimon_python_sdk/models/e_invoicing_integration_create_request.py +108 -0
  341. solvimon_python_sdk/models/e_invoicing_integration_update_request.py +108 -0
  342. solvimon_python_sdk/models/e_invoicing_mandate.py +124 -0
  343. solvimon_python_sdk/models/e_invoicing_mapping.py +93 -0
  344. solvimon_python_sdk/models/email_identifier.py +91 -0
  345. solvimon_python_sdk/models/email_provider_integration.py +111 -0
  346. solvimon_python_sdk/models/email_provider_integration_create_request.py +111 -0
  347. solvimon_python_sdk/models/email_provider_integration_update_request.py +111 -0
  348. solvimon_python_sdk/models/enabled_pricing.py +94 -0
  349. solvimon_python_sdk/models/enabled_pricing_create_request.py +94 -0
  350. solvimon_python_sdk/models/enabled_pricing_update_request.py +94 -0
  351. solvimon_python_sdk/models/entitlement.py +128 -0
  352. solvimon_python_sdk/models/entitlement_create_request.py +128 -0
  353. solvimon_python_sdk/models/entitlement_summary.py +98 -0
  354. solvimon_python_sdk/models/entitlement_summary_item.py +109 -0
  355. solvimon_python_sdk/models/entitlement_update_request.py +128 -0
  356. solvimon_python_sdk/models/entitlements.py +105 -0
  357. solvimon_python_sdk/models/entitlements_create_request.py +105 -0
  358. solvimon_python_sdk/models/erp_integration.py +99 -0
  359. solvimon_python_sdk/models/erp_integration_create_request.py +99 -0
  360. solvimon_python_sdk/models/erp_integration_update_request.py +99 -0
  361. solvimon_python_sdk/models/event_trace.py +130 -0
  362. solvimon_python_sdk/models/event_trace_link.py +143 -0
  363. solvimon_python_sdk/models/expiry_date.py +92 -0
  364. solvimon_python_sdk/models/export_report_location.py +121 -0
  365. solvimon_python_sdk/models/export_report_location_big_query_details.py +89 -0
  366. solvimon_python_sdk/models/export_report_location_create_request.py +121 -0
  367. solvimon_python_sdk/models/export_report_location_gcs_details.py +103 -0
  368. solvimon_python_sdk/models/export_report_location_s3_details.py +103 -0
  369. solvimon_python_sdk/models/export_report_location_update_request.py +121 -0
  370. solvimon_python_sdk/models/export_to_erp_action.py +101 -0
  371. solvimon_python_sdk/models/export_to_erp_action_update_request.py +101 -0
  372. solvimon_python_sdk/models/feature.py +156 -0
  373. solvimon_python_sdk/models/feature_create_request.py +150 -0
  374. solvimon_python_sdk/models/feature_resource_reference.py +102 -0
  375. solvimon_python_sdk/models/feature_response_wrapper.py +96 -0
  376. solvimon_python_sdk/models/feature_update_request.py +156 -0
  377. solvimon_python_sdk/models/file.py +214 -0
  378. solvimon_python_sdk/models/file_create_request.py +202 -0
  379. solvimon_python_sdk/models/file_download_settings.py +89 -0
  380. solvimon_python_sdk/models/file_download_settings_create_request.py +89 -0
  381. solvimon_python_sdk/models/file_download_settings_update_request.py +89 -0
  382. solvimon_python_sdk/models/file_line.py +107 -0
  383. solvimon_python_sdk/models/file_line_response_wrapper.py +108 -0
  384. solvimon_python_sdk/models/file_meter_data.py +92 -0
  385. solvimon_python_sdk/models/file_meter_data_create_request.py +92 -0
  386. solvimon_python_sdk/models/file_meter_data_update_request.py +92 -0
  387. solvimon_python_sdk/models/file_processing_settings.py +151 -0
  388. solvimon_python_sdk/models/file_processing_settings_create_request.py +145 -0
  389. solvimon_python_sdk/models/file_processing_settings_update_request.py +151 -0
  390. solvimon_python_sdk/models/file_response_wrapper.py +108 -0
  391. solvimon_python_sdk/models/file_update_request.py +214 -0
  392. solvimon_python_sdk/models/filter_field.py +95 -0
  393. solvimon_python_sdk/models/filter_field_create_request.py +95 -0
  394. solvimon_python_sdk/models/finalize_invoices_parameters.py +100 -0
  395. solvimon_python_sdk/models/finalize_invoices_parameters_create_request.py +100 -0
  396. solvimon_python_sdk/models/fixed_installment.py +96 -0
  397. solvimon_python_sdk/models/gcs.py +95 -0
  398. solvimon_python_sdk/models/get_all_approval_policies_response.py +96 -0
  399. solvimon_python_sdk/models/get_quotes_list.py +96 -0
  400. solvimon_python_sdk/models/hubspot_integration.py +89 -0
  401. solvimon_python_sdk/models/image.py +108 -0
  402. solvimon_python_sdk/models/inactive_period.py +106 -0
  403. solvimon_python_sdk/models/inactive_period_update_request.py +106 -0
  404. solvimon_python_sdk/models/indexing_settings.py +103 -0
  405. solvimon_python_sdk/models/indexing_settings_create_request.py +103 -0
  406. solvimon_python_sdk/models/indexing_target.py +95 -0
  407. solvimon_python_sdk/models/indexing_target_create_request.py +95 -0
  408. solvimon_python_sdk/models/individual.py +99 -0
  409. solvimon_python_sdk/models/individual_create_request.py +99 -0
  410. solvimon_python_sdk/models/individual_update_request.py +99 -0
  411. solvimon_python_sdk/models/ingest_data_response_wrapper.py +108 -0
  412. solvimon_python_sdk/models/ingest_data_summary.py +104 -0
  413. solvimon_python_sdk/models/ingest_reference_mapping.py +95 -0
  414. solvimon_python_sdk/models/init_pricing_plan_subscription_payment_context.py +119 -0
  415. solvimon_python_sdk/models/init_pricing_plan_subscription_portal_url.py +91 -0
  416. solvimon_python_sdk/models/init_pricing_plan_subscription_portal_url_create_request.py +91 -0
  417. solvimon_python_sdk/models/init_pricing_plan_subscription_portal_url_update_request.py +91 -0
  418. solvimon_python_sdk/models/integration.py +229 -0
  419. solvimon_python_sdk/models/integration_create_request.py +223 -0
  420. solvimon_python_sdk/models/integration_details.py +119 -0
  421. solvimon_python_sdk/models/integration_details_update_request.py +119 -0
  422. solvimon_python_sdk/models/integration_link_detail.py +91 -0
  423. solvimon_python_sdk/models/integration_linked_resource_configuration.py +98 -0
  424. solvimon_python_sdk/models/integration_linked_resource_configuration_create_request.py +98 -0
  425. solvimon_python_sdk/models/integration_linked_resource_configuration_update_request.py +98 -0
  426. solvimon_python_sdk/models/integration_response_wrapper.py +108 -0
  427. solvimon_python_sdk/models/integration_update_request.py +229 -0
  428. solvimon_python_sdk/models/interval_installment.py +105 -0
  429. solvimon_python_sdk/models/invoice.py +566 -0
  430. solvimon_python_sdk/models/invoice_action_credit.py +124 -0
  431. solvimon_python_sdk/models/invoice_action_credit_create_request.py +124 -0
  432. solvimon_python_sdk/models/invoice_action_delete_line.py +96 -0
  433. solvimon_python_sdk/models/invoice_action_delete_line_create_request.py +96 -0
  434. solvimon_python_sdk/models/invoice_action_options.py +91 -0
  435. solvimon_python_sdk/models/invoice_commitment.py +98 -0
  436. solvimon_python_sdk/models/invoice_coupon.py +95 -0
  437. solvimon_python_sdk/models/invoice_coupon_create_request.py +95 -0
  438. solvimon_python_sdk/models/invoice_coupon_update_request.py +95 -0
  439. solvimon_python_sdk/models/invoice_create_request.py +566 -0
  440. solvimon_python_sdk/models/invoice_create_request_transaction.py +563 -0
  441. solvimon_python_sdk/models/invoice_credit_detail.py +111 -0
  442. solvimon_python_sdk/models/invoice_credit_detail_create_request.py +111 -0
  443. solvimon_python_sdk/models/invoice_credit_detail_update_request.py +111 -0
  444. solvimon_python_sdk/models/invoice_dunning_action.py +107 -0
  445. solvimon_python_sdk/models/invoice_dunning_action_create_request.py +107 -0
  446. solvimon_python_sdk/models/invoice_dunning_action_update_request.py +107 -0
  447. solvimon_python_sdk/models/invoice_extra_open_period.py +91 -0
  448. solvimon_python_sdk/models/invoice_grace_period.py +95 -0
  449. solvimon_python_sdk/models/invoice_grace_period_configuration.py +91 -0
  450. solvimon_python_sdk/models/invoice_group.py +187 -0
  451. solvimon_python_sdk/models/invoice_line.py +207 -0
  452. solvimon_python_sdk/models/invoice_line_coupon_data.py +91 -0
  453. solvimon_python_sdk/models/invoice_line_meter_value.py +99 -0
  454. solvimon_python_sdk/models/invoice_meter_property_variable.py +113 -0
  455. solvimon_python_sdk/models/invoice_meter_property_variable_create_request.py +113 -0
  456. solvimon_python_sdk/models/invoice_meter_property_variable_update_request.py +113 -0
  457. solvimon_python_sdk/models/invoice_overdue.py +96 -0
  458. solvimon_python_sdk/models/invoice_payment_action.py +117 -0
  459. solvimon_python_sdk/models/invoice_payment_action_bank_account_details.py +123 -0
  460. solvimon_python_sdk/models/invoice_payment_action_create_request.py +117 -0
  461. solvimon_python_sdk/models/invoice_payment_action_custom_redirect_details.py +89 -0
  462. solvimon_python_sdk/models/invoice_payment_action_payment_gateway_details.py +103 -0
  463. solvimon_python_sdk/models/invoice_payment_action_update_request.py +117 -0
  464. solvimon_python_sdk/models/invoice_period.py +128 -0
  465. solvimon_python_sdk/models/invoice_period_create_request.py +128 -0
  466. solvimon_python_sdk/models/invoice_period_update_request.py +128 -0
  467. solvimon_python_sdk/models/invoice_portal_url.py +95 -0
  468. solvimon_python_sdk/models/invoice_portal_url_create_request.py +95 -0
  469. solvimon_python_sdk/models/invoice_portal_url_update_request.py +95 -0
  470. solvimon_python_sdk/models/invoice_preview_action.py +120 -0
  471. solvimon_python_sdk/models/invoice_preview_action_create_request.py +120 -0
  472. solvimon_python_sdk/models/invoice_preview_action_response.py +107 -0
  473. solvimon_python_sdk/models/invoice_preview_invoices_info.py +98 -0
  474. solvimon_python_sdk/models/invoice_pricing.py +91 -0
  475. solvimon_python_sdk/models/invoice_promotion_code.py +99 -0
  476. solvimon_python_sdk/models/invoice_promotion_code_create_request.py +99 -0
  477. solvimon_python_sdk/models/invoice_promotion_code_update_request.py +99 -0
  478. solvimon_python_sdk/models/invoice_reprocess.py +95 -0
  479. solvimon_python_sdk/models/invoice_reprocess_create_request.py +95 -0
  480. solvimon_python_sdk/models/invoice_reprocess_update_request.py +95 -0
  481. solvimon_python_sdk/models/invoice_response_wrapper.py +108 -0
  482. solvimon_python_sdk/models/invoice_settings.py +151 -0
  483. solvimon_python_sdk/models/invoice_settings_update_request.py +151 -0
  484. solvimon_python_sdk/models/invoice_sub_line.py +119 -0
  485. solvimon_python_sdk/models/invoice_sub_line_usage_based_conversion.py +93 -0
  486. solvimon_python_sdk/models/invoice_tax_amounts.py +111 -0
  487. solvimon_python_sdk/models/invoice_tax_category_summary.py +126 -0
  488. solvimon_python_sdk/models/invoice_tax_category_summary_create_request.py +126 -0
  489. solvimon_python_sdk/models/invoice_tax_category_summary_rate.py +97 -0
  490. solvimon_python_sdk/models/invoice_tax_category_summary_update_request.py +126 -0
  491. solvimon_python_sdk/models/invoice_tax_total_summary.py +113 -0
  492. solvimon_python_sdk/models/invoice_tax_total_summary_create_request.py +113 -0
  493. solvimon_python_sdk/models/invoice_tax_total_summary_update_request.py +113 -0
  494. solvimon_python_sdk/models/invoice_trigger.py +103 -0
  495. solvimon_python_sdk/models/invoice_trigger_create_request.py +103 -0
  496. solvimon_python_sdk/models/invoice_trigger_event.py +107 -0
  497. solvimon_python_sdk/models/invoice_trigger_manual.py +109 -0
  498. solvimon_python_sdk/models/invoice_trigger_overdue.py +93 -0
  499. solvimon_python_sdk/models/invoice_upcoming_payment.py +96 -0
  500. solvimon_python_sdk/models/invoice_update_request.py +566 -0
  501. solvimon_python_sdk/models/invoice_validation_result.py +91 -0
  502. solvimon_python_sdk/models/invoice_validation_result_create_request.py +91 -0
  503. solvimon_python_sdk/models/invoice_validation_result_update_request.py +91 -0
  504. solvimon_python_sdk/models/invoice_workflow.py +111 -0
  505. solvimon_python_sdk/models/invoice_workflow_create_request.py +111 -0
  506. solvimon_python_sdk/models/invoice_workflow_update_request.py +111 -0
  507. solvimon_python_sdk/models/jwt_token.py +116 -0
  508. solvimon_python_sdk/models/legal_entity_manager_details.py +93 -0
  509. solvimon_python_sdk/models/link_detail.py +91 -0
  510. solvimon_python_sdk/models/linked_integration.py +98 -0
  511. solvimon_python_sdk/models/linked_integration_create_request.py +98 -0
  512. solvimon_python_sdk/models/linked_integration_update_request.py +98 -0
  513. solvimon_python_sdk/models/linked_invoice_detail.py +103 -0
  514. solvimon_python_sdk/models/linked_invoice_detail_create_request.py +103 -0
  515. solvimon_python_sdk/models/linked_invoice_detail_update_request.py +103 -0
  516. solvimon_python_sdk/models/mailgun_email_provider.py +114 -0
  517. solvimon_python_sdk/models/markup.py +96 -0
  518. solvimon_python_sdk/models/markup_update_request.py +96 -0
  519. solvimon_python_sdk/models/meter.py +162 -0
  520. solvimon_python_sdk/models/meter_condition_expression.py +108 -0
  521. solvimon_python_sdk/models/meter_condition_operand.py +95 -0
  522. solvimon_python_sdk/models/meter_conditions.py +104 -0
  523. solvimon_python_sdk/models/meter_create_request.py +159 -0
  524. solvimon_python_sdk/models/meter_data.py +193 -0
  525. solvimon_python_sdk/models/meter_data_create_request.py +190 -0
  526. solvimon_python_sdk/models/meter_data_file_processing_settings.py +104 -0
  527. solvimon_python_sdk/models/meter_data_file_processing_settings_create_request.py +104 -0
  528. solvimon_python_sdk/models/meter_data_file_processing_settings_update_request.py +104 -0
  529. solvimon_python_sdk/models/meter_data_mapping_settings.py +119 -0
  530. solvimon_python_sdk/models/meter_data_meter_property.py +99 -0
  531. solvimon_python_sdk/models/meter_data_meter_property_create_request.py +99 -0
  532. solvimon_python_sdk/models/meter_data_meter_value.py +107 -0
  533. solvimon_python_sdk/models/meter_data_meter_value_create_request.py +107 -0
  534. solvimon_python_sdk/models/meter_data_processed_details.py +121 -0
  535. solvimon_python_sdk/models/meter_data_processed_details_create_request.py +121 -0
  536. solvimon_python_sdk/models/meter_datas.py +97 -0
  537. solvimon_python_sdk/models/meter_datas_create_request.py +97 -0
  538. solvimon_python_sdk/models/meter_meter_property.py +112 -0
  539. solvimon_python_sdk/models/meter_meter_property_create_request.py +112 -0
  540. solvimon_python_sdk/models/meter_meter_property_update_request.py +112 -0
  541. solvimon_python_sdk/models/meter_meter_value.py +112 -0
  542. solvimon_python_sdk/models/meter_meter_value_create_request.py +112 -0
  543. solvimon_python_sdk/models/meter_meter_value_update_request.py +112 -0
  544. solvimon_python_sdk/models/meter_property.py +158 -0
  545. solvimon_python_sdk/models/meter_property_condition.py +125 -0
  546. solvimon_python_sdk/models/meter_property_create_request.py +149 -0
  547. solvimon_python_sdk/models/meter_property_dynamic_validation_settings.py +101 -0
  548. solvimon_python_sdk/models/meter_property_mapping.py +99 -0
  549. solvimon_python_sdk/models/meter_property_response_wrapper.py +96 -0
  550. solvimon_python_sdk/models/meter_property_split_pricing.py +101 -0
  551. solvimon_python_sdk/models/meter_property_update_request.py +158 -0
  552. solvimon_python_sdk/models/meter_property_variable.py +174 -0
  553. solvimon_python_sdk/models/meter_property_variable_create_request.py +168 -0
  554. solvimon_python_sdk/models/meter_property_variable_response_wrapper.py +108 -0
  555. solvimon_python_sdk/models/meter_property_variable_update_request.py +174 -0
  556. solvimon_python_sdk/models/meter_property_variable_value.py +95 -0
  557. solvimon_python_sdk/models/meter_property_variable_value_response_wrapper.py +108 -0
  558. solvimon_python_sdk/models/meter_property_variable_values_update.py +91 -0
  559. solvimon_python_sdk/models/meter_property_variable_values_update_result.py +103 -0
  560. solvimon_python_sdk/models/meter_property_variable_values_update_update_request.py +91 -0
  561. solvimon_python_sdk/models/meter_response_wrapper.py +96 -0
  562. solvimon_python_sdk/models/meter_update_request.py +162 -0
  563. solvimon_python_sdk/models/meter_value.py +156 -0
  564. solvimon_python_sdk/models/meter_value_calculation.py +176 -0
  565. solvimon_python_sdk/models/meter_value_calculation_commitment.py +95 -0
  566. solvimon_python_sdk/models/meter_value_calculation_create_request.py +170 -0
  567. solvimon_python_sdk/models/meter_value_calculation_response_wrapper.py +96 -0
  568. solvimon_python_sdk/models/meter_value_calculation_update_request.py +176 -0
  569. solvimon_python_sdk/models/meter_value_create_request.py +147 -0
  570. solvimon_python_sdk/models/meter_value_create_request_transaction.py +156 -0
  571. solvimon_python_sdk/models/meter_value_dynamic_validation_settings.py +101 -0
  572. solvimon_python_sdk/models/meter_value_mapping.py +103 -0
  573. solvimon_python_sdk/models/meter_value_mapping_amount_default_value.py +98 -0
  574. solvimon_python_sdk/models/meter_value_mapping_column.py +95 -0
  575. solvimon_python_sdk/models/meter_value_mapping_column_amount.py +91 -0
  576. solvimon_python_sdk/models/meter_value_mapping_default_value.py +99 -0
  577. solvimon_python_sdk/models/meter_value_response_wrapper.py +96 -0
  578. solvimon_python_sdk/models/meter_value_update_request.py +156 -0
  579. solvimon_python_sdk/models/mx_local.py +124 -0
  580. solvimon_python_sdk/models/name.py +93 -0
  581. solvimon_python_sdk/models/name_create_request.py +93 -0
  582. solvimon_python_sdk/models/name_update_request.py +93 -0
  583. solvimon_python_sdk/models/next_action.py +95 -0
  584. solvimon_python_sdk/models/next_action_redirect_to_url.py +91 -0
  585. solvimon_python_sdk/models/next_invoice.py +96 -0
  586. solvimon_python_sdk/models/next_invoice_update_request.py +96 -0
  587. solvimon_python_sdk/models/not_matched.py +91 -0
  588. solvimon_python_sdk/models/notification_channel.py +101 -0
  589. solvimon_python_sdk/models/notification_preference.py +108 -0
  590. solvimon_python_sdk/models/notification_preference_create_request.py +108 -0
  591. solvimon_python_sdk/models/notification_preference_update_request.py +108 -0
  592. solvimon_python_sdk/models/o_auth_callback.py +124 -0
  593. solvimon_python_sdk/models/o_auth_callback_create_request.py +115 -0
  594. solvimon_python_sdk/models/o_auth_credential_request.py +93 -0
  595. solvimon_python_sdk/models/o_auth_credential_request_create_request.py +93 -0
  596. solvimon_python_sdk/models/on_demand_pricing_items_response.py +110 -0
  597. solvimon_python_sdk/models/one_off_invoice_line.py +149 -0
  598. solvimon_python_sdk/models/one_off_invoice_line_create_request.py +146 -0
  599. solvimon_python_sdk/models/organization.py +132 -0
  600. solvimon_python_sdk/models/organization_create_request.py +132 -0
  601. solvimon_python_sdk/models/organization_update_request.py +132 -0
  602. solvimon_python_sdk/models/original_invoice_info.py +91 -0
  603. solvimon_python_sdk/models/other_custom_field_value.py +103 -0
  604. solvimon_python_sdk/models/other_custom_field_value_create_request.py +103 -0
  605. solvimon_python_sdk/models/other_custom_field_value_update_request.py +103 -0
  606. solvimon_python_sdk/models/pagination_links.py +95 -0
  607. solvimon_python_sdk/models/paragon_settings.py +89 -0
  608. solvimon_python_sdk/models/paragon_settings_create_request.py +89 -0
  609. solvimon_python_sdk/models/paragon_settings_update_request.py +89 -0
  610. solvimon_python_sdk/models/password_reset_request.py +89 -0
  611. solvimon_python_sdk/models/password_reset_request_create_request.py +89 -0
  612. solvimon_python_sdk/models/patch_e_invoice.py +93 -0
  613. solvimon_python_sdk/models/patch_e_invoice_update_request.py +93 -0
  614. solvimon_python_sdk/models/pay_invoice_payment_context.py +89 -0
  615. solvimon_python_sdk/models/payment.py +172 -0
  616. solvimon_python_sdk/models/payment_acceptor.py +178 -0
  617. solvimon_python_sdk/models/payment_acceptor_create_request.py +172 -0
  618. solvimon_python_sdk/models/payment_acceptor_custom_redirect.py +100 -0
  619. solvimon_python_sdk/models/payment_acceptor_custom_redirect_create_request.py +100 -0
  620. solvimon_python_sdk/models/payment_acceptor_payment_method_options.py +108 -0
  621. solvimon_python_sdk/models/payment_acceptor_payment_method_options_request.py +123 -0
  622. solvimon_python_sdk/models/payment_acceptor_payment_method_options_request_create_request.py +123 -0
  623. solvimon_python_sdk/models/payment_acceptor_response_wrapper.py +96 -0
  624. solvimon_python_sdk/models/payment_acceptor_update_request.py +178 -0
  625. solvimon_python_sdk/models/payment_context.py +152 -0
  626. solvimon_python_sdk/models/payment_context_create_request.py +152 -0
  627. solvimon_python_sdk/models/payment_create_request.py +172 -0
  628. solvimon_python_sdk/models/payment_create_request_transaction.py +169 -0
  629. solvimon_python_sdk/models/payment_dunning_action_details.py +93 -0
  630. solvimon_python_sdk/models/payment_dunning_action_details_create_request.py +93 -0
  631. solvimon_python_sdk/models/payment_gateway_integration.py +111 -0
  632. solvimon_python_sdk/models/payment_gateway_integration_create_request.py +111 -0
  633. solvimon_python_sdk/models/payment_gateway_integration_update_request.py +111 -0
  634. solvimon_python_sdk/models/payment_gateway_payment_acceptor.py +125 -0
  635. solvimon_python_sdk/models/payment_gateway_payment_acceptor_adyen.py +97 -0
  636. solvimon_python_sdk/models/payment_gateway_payment_acceptor_create_request.py +125 -0
  637. solvimon_python_sdk/models/payment_gateway_payment_acceptor_link.py +93 -0
  638. solvimon_python_sdk/models/payment_method.py +192 -0
  639. solvimon_python_sdk/models/payment_method_action_refresh.py +95 -0
  640. solvimon_python_sdk/models/payment_method_action_refresh_create_request.py +95 -0
  641. solvimon_python_sdk/models/payment_method_buy_now_pay_later.py +89 -0
  642. solvimon_python_sdk/models/payment_method_buy_now_pay_later_update_request.py +89 -0
  643. solvimon_python_sdk/models/payment_method_card.py +111 -0
  644. solvimon_python_sdk/models/payment_method_card_update_request.py +111 -0
  645. solvimon_python_sdk/models/payment_method_create_request.py +192 -0
  646. solvimon_python_sdk/models/payment_method_details.py +135 -0
  647. solvimon_python_sdk/models/payment_method_details_buy_now_pay_later.py +89 -0
  648. solvimon_python_sdk/models/payment_method_details_card.py +101 -0
  649. solvimon_python_sdk/models/payment_method_details_create_request.py +135 -0
  650. solvimon_python_sdk/models/payment_method_details_digital_wallet.py +89 -0
  651. solvimon_python_sdk/models/payment_method_details_direct_debit.py +107 -0
  652. solvimon_python_sdk/models/payment_method_details_online_banking.py +107 -0
  653. solvimon_python_sdk/models/payment_method_details_unknown.py +89 -0
  654. solvimon_python_sdk/models/payment_method_digital_wallet.py +89 -0
  655. solvimon_python_sdk/models/payment_method_digital_wallet_update_request.py +89 -0
  656. solvimon_python_sdk/models/payment_method_direct_debit.py +107 -0
  657. solvimon_python_sdk/models/payment_method_direct_debit_update_request.py +107 -0
  658. solvimon_python_sdk/models/payment_method_fallback.py +91 -0
  659. solvimon_python_sdk/models/payment_method_fallback_create_request.py +91 -0
  660. solvimon_python_sdk/models/payment_method_fallback_update_request.py +91 -0
  661. solvimon_python_sdk/models/payment_method_online_banking.py +107 -0
  662. solvimon_python_sdk/models/payment_method_online_banking_update_request.py +107 -0
  663. solvimon_python_sdk/models/payment_method_option.py +105 -0
  664. solvimon_python_sdk/models/payment_method_payment_response.py +117 -0
  665. solvimon_python_sdk/models/payment_method_response_wrapper.py +108 -0
  666. solvimon_python_sdk/models/payment_method_tokenization_request.py +137 -0
  667. solvimon_python_sdk/models/payment_method_tokenization_request_create_request.py +134 -0
  668. solvimon_python_sdk/models/payment_method_update_request.py +192 -0
  669. solvimon_python_sdk/models/payment_method_update_request_transaction.py +192 -0
  670. solvimon_python_sdk/models/payment_modification_response.py +105 -0
  671. solvimon_python_sdk/models/payment_request.py +145 -0
  672. solvimon_python_sdk/models/payment_request_create_request.py +145 -0
  673. solvimon_python_sdk/models/payment_request_payment_context.py +89 -0
  674. solvimon_python_sdk/models/payment_request_response_wrapper.py +108 -0
  675. solvimon_python_sdk/models/payment_response_wrapper.py +108 -0
  676. solvimon_python_sdk/models/payment_result_details.py +95 -0
  677. solvimon_python_sdk/models/payment_result_details_create_request.py +95 -0
  678. solvimon_python_sdk/models/payment_schedule.py +204 -0
  679. solvimon_python_sdk/models/payment_schedule_create_request.py +198 -0
  680. solvimon_python_sdk/models/payment_schedule_dunning.py +89 -0
  681. solvimon_python_sdk/models/payment_schedule_dunning_create_request.py +89 -0
  682. solvimon_python_sdk/models/payment_schedule_dunning_update_request.py +89 -0
  683. solvimon_python_sdk/models/payment_schedule_init.py +116 -0
  684. solvimon_python_sdk/models/payment_schedule_init_create_request.py +116 -0
  685. solvimon_python_sdk/models/payment_schedule_installments.py +120 -0
  686. solvimon_python_sdk/models/payment_schedule_installments_create_request.py +120 -0
  687. solvimon_python_sdk/models/payment_schedule_installments_update_request.py +120 -0
  688. solvimon_python_sdk/models/payment_schedule_one_off.py +93 -0
  689. solvimon_python_sdk/models/payment_schedule_one_off_create_request.py +93 -0
  690. solvimon_python_sdk/models/payment_schedule_one_off_update_request.py +93 -0
  691. solvimon_python_sdk/models/payment_schedule_recurring.py +104 -0
  692. solvimon_python_sdk/models/payment_schedule_recurring_create_request.py +104 -0
  693. solvimon_python_sdk/models/payment_schedule_recurring_update_request.py +104 -0
  694. solvimon_python_sdk/models/payment_schedule_response_wrapper.py +108 -0
  695. solvimon_python_sdk/models/payment_schedule_update_request.py +204 -0
  696. solvimon_python_sdk/models/payment_trigger.py +111 -0
  697. solvimon_python_sdk/models/payment_trigger_create_request.py +111 -0
  698. solvimon_python_sdk/models/payment_trigger_event.py +99 -0
  699. solvimon_python_sdk/models/payment_trigger_manual.py +103 -0
  700. solvimon_python_sdk/models/payment_verify_detail.py +97 -0
  701. solvimon_python_sdk/models/payment_verify_detail_create_request.py +97 -0
  702. solvimon_python_sdk/models/payment_verify_detail_response.py +89 -0
  703. solvimon_python_sdk/models/payment_workflow.py +99 -0
  704. solvimon_python_sdk/models/payment_workflow_create_request.py +99 -0
  705. solvimon_python_sdk/models/payment_workflow_update_request.py +99 -0
  706. solvimon_python_sdk/models/penalty_box_data.py +95 -0
  707. solvimon_python_sdk/models/penalty_box_data_create_request.py +95 -0
  708. solvimon_python_sdk/models/penalty_box_data_update_request.py +95 -0
  709. solvimon_python_sdk/models/period.py +101 -0
  710. solvimon_python_sdk/models/period_create_request.py +101 -0
  711. solvimon_python_sdk/models/period_update_request.py +101 -0
  712. solvimon_python_sdk/models/persist_data.py +157 -0
  713. solvimon_python_sdk/models/persist_data_create_request.py +157 -0
  714. solvimon_python_sdk/models/platform.py +227 -0
  715. solvimon_python_sdk/models/platform_pricing_plan_subscription_settings.py +149 -0
  716. solvimon_python_sdk/models/platform_pricing_plan_subscription_settings_update_request.py +149 -0
  717. solvimon_python_sdk/models/platform_up_to_date.py +111 -0
  718. solvimon_python_sdk/models/platform_up_to_date_reprocess.py +99 -0
  719. solvimon_python_sdk/models/platform_update_request.py +227 -0
  720. solvimon_python_sdk/models/portal_url.py +183 -0
  721. solvimon_python_sdk/models/portal_url_create_request.py +180 -0
  722. solvimon_python_sdk/models/portal_url_link.py +101 -0
  723. solvimon_python_sdk/models/portal_url_link_create_request.py +101 -0
  724. solvimon_python_sdk/models/portal_url_link_update_request.py +101 -0
  725. solvimon_python_sdk/models/portal_url_response_wrapper.py +108 -0
  726. solvimon_python_sdk/models/portal_url_settings.py +93 -0
  727. solvimon_python_sdk/models/portal_url_update_request.py +183 -0
  728. solvimon_python_sdk/models/portal_url_widgets.py +93 -0
  729. solvimon_python_sdk/models/portal_url_widgets_create_request.py +93 -0
  730. solvimon_python_sdk/models/portal_url_widgets_update_request.py +93 -0
  731. solvimon_python_sdk/models/pricing.py +167 -0
  732. solvimon_python_sdk/models/pricing_category.py +126 -0
  733. solvimon_python_sdk/models/pricing_category_create_request.py +126 -0
  734. solvimon_python_sdk/models/pricing_category_update_request.py +126 -0
  735. solvimon_python_sdk/models/pricing_commitment.py +100 -0
  736. solvimon_python_sdk/models/pricing_create_request.py +167 -0
  737. solvimon_python_sdk/models/pricing_currency_settings.py +91 -0
  738. solvimon_python_sdk/models/pricing_currency_settings_create_request.py +91 -0
  739. solvimon_python_sdk/models/pricing_currency_settings_update_request.py +91 -0
  740. solvimon_python_sdk/models/pricing_discount.py +108 -0
  741. solvimon_python_sdk/models/pricing_group.py +137 -0
  742. solvimon_python_sdk/models/pricing_group_create_request.py +137 -0
  743. solvimon_python_sdk/models/pricing_group_update_request.py +137 -0
  744. solvimon_python_sdk/models/pricing_item.py +156 -0
  745. solvimon_python_sdk/models/pricing_item_billing_period_config.py +102 -0
  746. solvimon_python_sdk/models/pricing_item_commitment.py +100 -0
  747. solvimon_python_sdk/models/pricing_item_config.py +209 -0
  748. solvimon_python_sdk/models/pricing_item_config_band.py +131 -0
  749. solvimon_python_sdk/models/pricing_item_config_band_create_request.py +131 -0
  750. solvimon_python_sdk/models/pricing_item_config_commitment.py +107 -0
  751. solvimon_python_sdk/models/pricing_item_config_conditions.py +100 -0
  752. solvimon_python_sdk/models/pricing_item_config_details.py +119 -0
  753. solvimon_python_sdk/models/pricing_item_config_discount.py +108 -0
  754. solvimon_python_sdk/models/pricing_item_config_markup.py +102 -0
  755. solvimon_python_sdk/models/pricing_item_config_meter_value.py +97 -0
  756. solvimon_python_sdk/models/pricing_item_config_meter_value_included_volume.py +99 -0
  757. solvimon_python_sdk/models/pricing_item_config_split_pricing.py +96 -0
  758. solvimon_python_sdk/models/pricing_item_config_top_up.py +89 -0
  759. solvimon_python_sdk/models/pricing_item_config_wallet_grant.py +127 -0
  760. solvimon_python_sdk/models/pricing_item_config_wallet_grant_amount_grant.py +95 -0
  761. solvimon_python_sdk/models/pricing_item_config_wallet_grant_credits_grant.py +99 -0
  762. solvimon_python_sdk/models/pricing_item_config_wallet_grant_credits_grant_conversion.py +91 -0
  763. solvimon_python_sdk/models/pricing_item_config_wallet_grant_expiry_policy.py +93 -0
  764. solvimon_python_sdk/models/pricing_item_create_request.py +156 -0
  765. solvimon_python_sdk/models/pricing_item_discount.py +108 -0
  766. solvimon_python_sdk/models/pricing_item_pricing_currency_config.py +129 -0
  767. solvimon_python_sdk/models/pricing_item_summary_included_volume_details.py +103 -0
  768. solvimon_python_sdk/models/pricing_item_summary_meter_value.py +115 -0
  769. solvimon_python_sdk/models/pricing_item_summary_price_details.py +204 -0
  770. solvimon_python_sdk/models/pricing_item_summary_price_details_band.py +138 -0
  771. solvimon_python_sdk/models/pricing_item_summary_price_details_conversion.py +95 -0
  772. solvimon_python_sdk/models/pricing_item_summary_wallet_balance.py +113 -0
  773. solvimon_python_sdk/models/pricing_item_summary_wallet_balance_details.py +103 -0
  774. solvimon_python_sdk/models/pricing_item_update_request.py +156 -0
  775. solvimon_python_sdk/models/pricing_plan.py +220 -0
  776. solvimon_python_sdk/models/pricing_plan_create_request.py +217 -0
  777. solvimon_python_sdk/models/pricing_plan_group.py +175 -0
  778. solvimon_python_sdk/models/pricing_plan_group_create_request.py +163 -0
  779. solvimon_python_sdk/models/pricing_plan_group_member.py +91 -0
  780. solvimon_python_sdk/models/pricing_plan_group_member_create_request.py +91 -0
  781. solvimon_python_sdk/models/pricing_plan_group_member_update_request.py +91 -0
  782. solvimon_python_sdk/models/pricing_plan_group_response_wrapper.py +108 -0
  783. solvimon_python_sdk/models/pricing_plan_group_update_request.py +175 -0
  784. solvimon_python_sdk/models/pricing_plan_response_wrapper.py +108 -0
  785. solvimon_python_sdk/models/pricing_plan_schedule.py +290 -0
  786. solvimon_python_sdk/models/pricing_plan_schedule_copy.py +149 -0
  787. solvimon_python_sdk/models/pricing_plan_schedule_copy_create_request.py +149 -0
  788. solvimon_python_sdk/models/pricing_plan_schedule_create_request.py +290 -0
  789. solvimon_python_sdk/models/pricing_plan_schedule_customization.py +135 -0
  790. solvimon_python_sdk/models/pricing_plan_schedule_customization_create_request.py +135 -0
  791. solvimon_python_sdk/models/pricing_plan_schedule_info.py +139 -0
  792. solvimon_python_sdk/models/pricing_plan_schedule_info_update_request.py +139 -0
  793. solvimon_python_sdk/models/pricing_plan_schedule_migrate.py +126 -0
  794. solvimon_python_sdk/models/pricing_plan_schedule_migrate_create_request.py +126 -0
  795. solvimon_python_sdk/models/pricing_plan_schedule_response_wrapper.py +96 -0
  796. solvimon_python_sdk/models/pricing_plan_schedule_template.py +89 -0
  797. solvimon_python_sdk/models/pricing_plan_schedule_template_create_request.py +89 -0
  798. solvimon_python_sdk/models/pricing_plan_schedule_template_update_request.py +89 -0
  799. solvimon_python_sdk/models/pricing_plan_schedule_update_request.py +290 -0
  800. solvimon_python_sdk/models/pricing_plan_subscription.py +396 -0
  801. solvimon_python_sdk/models/pricing_plan_subscription_cancel.py +117 -0
  802. solvimon_python_sdk/models/pricing_plan_subscription_cancel_create_request.py +114 -0
  803. solvimon_python_sdk/models/pricing_plan_subscription_change_plan.py +98 -0
  804. solvimon_python_sdk/models/pricing_plan_subscription_change_plan_create_request.py +98 -0
  805. solvimon_python_sdk/models/pricing_plan_subscription_copy.py +100 -0
  806. solvimon_python_sdk/models/pricing_plan_subscription_copy_create_request.py +100 -0
  807. solvimon_python_sdk/models/pricing_plan_subscription_create_request.py +396 -0
  808. solvimon_python_sdk/models/pricing_plan_subscription_group.py +126 -0
  809. solvimon_python_sdk/models/pricing_plan_subscription_group_create_request.py +123 -0
  810. solvimon_python_sdk/models/pricing_plan_subscription_group_response_wrapper.py +108 -0
  811. solvimon_python_sdk/models/pricing_plan_subscription_group_update_request.py +126 -0
  812. solvimon_python_sdk/models/pricing_plan_subscription_info.py +95 -0
  813. solvimon_python_sdk/models/pricing_plan_subscription_info_create_request.py +95 -0
  814. solvimon_python_sdk/models/pricing_plan_subscription_info_update_request.py +95 -0
  815. solvimon_python_sdk/models/pricing_plan_subscription_init.py +148 -0
  816. solvimon_python_sdk/models/pricing_plan_subscription_init_create_request.py +148 -0
  817. solvimon_python_sdk/models/pricing_plan_subscription_payment_method_update.py +91 -0
  818. solvimon_python_sdk/models/pricing_plan_subscription_payment_method_update_create_request.py +91 -0
  819. solvimon_python_sdk/models/pricing_plan_subscription_response_wrapper.py +108 -0
  820. solvimon_python_sdk/models/pricing_plan_subscription_selector.py +126 -0
  821. solvimon_python_sdk/models/pricing_plan_subscription_selector_create_request.py +126 -0
  822. solvimon_python_sdk/models/pricing_plan_subscription_selector_data.py +101 -0
  823. solvimon_python_sdk/models/pricing_plan_subscription_selector_filter.py +113 -0
  824. solvimon_python_sdk/models/pricing_plan_subscription_selector_rule.py +111 -0
  825. solvimon_python_sdk/models/pricing_plan_subscription_selector_update_request.py +126 -0
  826. solvimon_python_sdk/models/pricing_plan_subscription_template.py +112 -0
  827. solvimon_python_sdk/models/pricing_plan_subscription_template_create_request.py +112 -0
  828. solvimon_python_sdk/models/pricing_plan_subscription_template_update_request.py +112 -0
  829. solvimon_python_sdk/models/pricing_plan_subscription_trigger.py +124 -0
  830. solvimon_python_sdk/models/pricing_plan_subscription_trigger_create_request.py +124 -0
  831. solvimon_python_sdk/models/pricing_plan_subscription_trigger_event.py +99 -0
  832. solvimon_python_sdk/models/pricing_plan_subscription_trigger_manual.py +103 -0
  833. solvimon_python_sdk/models/pricing_plan_subscription_update_request.py +396 -0
  834. solvimon_python_sdk/models/pricing_plan_subscription_workflow.py +108 -0
  835. solvimon_python_sdk/models/pricing_plan_subscription_workflow_create_request.py +108 -0
  836. solvimon_python_sdk/models/pricing_plan_subscription_workflow_update_request.py +108 -0
  837. solvimon_python_sdk/models/pricing_plan_update_request.py +220 -0
  838. solvimon_python_sdk/models/pricing_plan_version.py +159 -0
  839. solvimon_python_sdk/models/pricing_plan_version_create_request.py +159 -0
  840. solvimon_python_sdk/models/pricing_plan_version_info.py +99 -0
  841. solvimon_python_sdk/models/pricing_plan_version_info_create_request.py +99 -0
  842. solvimon_python_sdk/models/pricing_plan_version_info_update_request.py +99 -0
  843. solvimon_python_sdk/models/pricing_plan_version_selector.py +105 -0
  844. solvimon_python_sdk/models/pricing_plan_version_selector_create_request.py +105 -0
  845. solvimon_python_sdk/models/pricing_plan_version_selector_update_request.py +105 -0
  846. solvimon_python_sdk/models/pricing_plan_version_update_request.py +159 -0
  847. solvimon_python_sdk/models/pricing_update_request.py +167 -0
  848. solvimon_python_sdk/models/processing_settings.py +89 -0
  849. solvimon_python_sdk/models/processing_settings_update_request.py +89 -0
  850. solvimon_python_sdk/models/product.py +221 -0
  851. solvimon_python_sdk/models/product_category.py +148 -0
  852. solvimon_python_sdk/models/product_category_create_request.py +142 -0
  853. solvimon_python_sdk/models/product_category_discount.py +119 -0
  854. solvimon_python_sdk/models/product_category_response_wrapper.py +108 -0
  855. solvimon_python_sdk/models/product_category_update_request.py +148 -0
  856. solvimon_python_sdk/models/product_create_request.py +221 -0
  857. solvimon_python_sdk/models/product_discount.py +119 -0
  858. solvimon_python_sdk/models/product_item.py +243 -0
  859. solvimon_python_sdk/models/product_item_create_request.py +234 -0
  860. solvimon_python_sdk/models/product_item_credits.py +97 -0
  861. solvimon_python_sdk/models/product_item_credits_create_request.py +97 -0
  862. solvimon_python_sdk/models/product_item_credits_update_request.py +97 -0
  863. solvimon_python_sdk/models/product_item_discount.py +119 -0
  864. solvimon_python_sdk/models/product_item_meter_property_condition_discount.py +126 -0
  865. solvimon_python_sdk/models/product_item_response_wrapper.py +108 -0
  866. solvimon_python_sdk/models/product_item_update_request.py +243 -0
  867. solvimon_python_sdk/models/product_item_usage_based.py +114 -0
  868. solvimon_python_sdk/models/product_item_usage_based_create_request.py +114 -0
  869. solvimon_python_sdk/models/product_item_usage_based_update_request.py +114 -0
  870. solvimon_python_sdk/models/product_response_wrapper.py +108 -0
  871. solvimon_python_sdk/models/product_update_request.py +221 -0
  872. solvimon_python_sdk/models/promotion_code.py +137 -0
  873. solvimon_python_sdk/models/promotion_code_create_request.py +137 -0
  874. solvimon_python_sdk/models/promotion_code_details.py +95 -0
  875. solvimon_python_sdk/models/promotion_code_limited_to.py +100 -0
  876. solvimon_python_sdk/models/promotion_code_limited_to_create_request.py +100 -0
  877. solvimon_python_sdk/models/promotion_code_response_wrapper.py +108 -0
  878. solvimon_python_sdk/models/quote.py +166 -0
  879. solvimon_python_sdk/models/quote_create_request.py +166 -0
  880. solvimon_python_sdk/models/quote_init_action.py +113 -0
  881. solvimon_python_sdk/models/quote_init_action_create_request.py +113 -0
  882. solvimon_python_sdk/models/quote_init_action_pricing_plan_subscription.py +138 -0
  883. solvimon_python_sdk/models/quote_init_action_pricing_plan_subscription_create_request.py +138 -0
  884. solvimon_python_sdk/models/quote_init_action_quote.py +117 -0
  885. solvimon_python_sdk/models/quote_init_action_quote_create_request.py +117 -0
  886. solvimon_python_sdk/models/quote_init_action_quote_pricing_plan_schedule.py +125 -0
  887. solvimon_python_sdk/models/quote_init_action_quote_pricing_plan_schedule_create_request.py +125 -0
  888. solvimon_python_sdk/models/quote_init_action_quote_version.py +91 -0
  889. solvimon_python_sdk/models/quote_init_action_quote_version_create_request.py +91 -0
  890. solvimon_python_sdk/models/quote_pdf_configuration.py +91 -0
  891. solvimon_python_sdk/models/quote_settings.py +93 -0
  892. solvimon_python_sdk/models/quote_settings_update_request.py +93 -0
  893. solvimon_python_sdk/models/quote_template.py +176 -0
  894. solvimon_python_sdk/models/quote_template_create_request.py +170 -0
  895. solvimon_python_sdk/models/quote_template_response_wrapper.py +108 -0
  896. solvimon_python_sdk/models/quote_template_update_request.py +176 -0
  897. solvimon_python_sdk/models/quote_update_request.py +166 -0
  898. solvimon_python_sdk/models/quote_upgrade_action_request.py +105 -0
  899. solvimon_python_sdk/models/quote_upgrade_action_request_create_request.py +105 -0
  900. solvimon_python_sdk/models/quote_upgrade_action_request_pricing_plan_schedule.py +94 -0
  901. solvimon_python_sdk/models/quote_upgrade_action_request_pricing_plan_schedule_create_request.py +94 -0
  902. solvimon_python_sdk/models/quote_upgrade_action_request_pricing_plan_subscription.py +124 -0
  903. solvimon_python_sdk/models/quote_upgrade_action_request_pricing_plan_subscription_create_request.py +124 -0
  904. solvimon_python_sdk/models/quote_upgrade_action_request_quote.py +114 -0
  905. solvimon_python_sdk/models/quote_upgrade_action_request_quote_create_request.py +114 -0
  906. solvimon_python_sdk/models/quote_upgrade_action_response.py +111 -0
  907. solvimon_python_sdk/models/quote_version.py +180 -0
  908. solvimon_python_sdk/models/quote_version_action.py +147 -0
  909. solvimon_python_sdk/models/quote_version_action_accept.py +95 -0
  910. solvimon_python_sdk/models/quote_version_action_accept_create_request.py +95 -0
  911. solvimon_python_sdk/models/quote_version_action_create_request.py +147 -0
  912. solvimon_python_sdk/models/quote_version_action_create_subscription.py +91 -0
  913. solvimon_python_sdk/models/quote_version_action_create_subscription_create_request.py +91 -0
  914. solvimon_python_sdk/models/quote_version_action_reject.py +97 -0
  915. solvimon_python_sdk/models/quote_version_action_reject_create_request.py +97 -0
  916. solvimon_python_sdk/models/quote_version_action_request_signature.py +99 -0
  917. solvimon_python_sdk/models/quote_version_action_send.py +95 -0
  918. solvimon_python_sdk/models/quote_version_action_send_create_request.py +95 -0
  919. solvimon_python_sdk/models/quote_version_action_sign.py +91 -0
  920. solvimon_python_sdk/models/quote_version_action_update_request.py +147 -0
  921. solvimon_python_sdk/models/quote_version_content.py +107 -0
  922. solvimon_python_sdk/models/quote_version_content_create_request.py +107 -0
  923. solvimon_python_sdk/models/quote_version_content_update_request.py +107 -0
  924. solvimon_python_sdk/models/quote_version_create_request.py +180 -0
  925. solvimon_python_sdk/models/quote_version_default_content.py +91 -0
  926. solvimon_python_sdk/models/quote_version_info.py +103 -0
  927. solvimon_python_sdk/models/quote_version_info_create_request.py +103 -0
  928. solvimon_python_sdk/models/quote_version_info_update_request.py +103 -0
  929. solvimon_python_sdk/models/quote_version_invoices_info.py +95 -0
  930. solvimon_python_sdk/models/quote_version_invoices_info_create_request.py +95 -0
  931. solvimon_python_sdk/models/quote_version_invoices_info_update_request.py +95 -0
  932. solvimon_python_sdk/models/quote_version_portal_url.py +89 -0
  933. solvimon_python_sdk/models/quote_version_portal_url_create_request.py +89 -0
  934. solvimon_python_sdk/models/quote_version_portal_url_update_request.py +89 -0
  935. solvimon_python_sdk/models/quote_version_recipient_data.py +125 -0
  936. solvimon_python_sdk/models/quote_version_recipient_data_create_request.py +125 -0
  937. solvimon_python_sdk/models/quote_version_recipient_data_update_request.py +125 -0
  938. solvimon_python_sdk/models/quote_version_response_wrapper.py +108 -0
  939. solvimon_python_sdk/models/quote_version_template.py +95 -0
  940. solvimon_python_sdk/models/quote_version_template_create_request.py +95 -0
  941. solvimon_python_sdk/models/quote_version_template_update_request.py +95 -0
  942. solvimon_python_sdk/models/quote_version_update_request.py +180 -0
  943. solvimon_python_sdk/models/quotes_response_wrapper.py +108 -0
  944. solvimon_python_sdk/models/rate_card.py +90 -0
  945. solvimon_python_sdk/models/rate_card_create_request.py +90 -0
  946. solvimon_python_sdk/models/rate_card_update_request.py +90 -0
  947. solvimon_python_sdk/models/recipient_contact_data.py +97 -0
  948. solvimon_python_sdk/models/recipient_details_data.py +95 -0
  949. solvimon_python_sdk/models/reference_mapping_interface.py +95 -0
  950. solvimon_python_sdk/models/refresh_invoice.py +112 -0
  951. solvimon_python_sdk/models/refresh_invoice_create_request.py +112 -0
  952. solvimon_python_sdk/models/refund_payment_request.py +93 -0
  953. solvimon_python_sdk/models/refund_payment_request_create_request.py +93 -0
  954. solvimon_python_sdk/models/report.py +164 -0
  955. solvimon_python_sdk/models/report_column.py +103 -0
  956. solvimon_python_sdk/models/report_configuration.py +128 -0
  957. solvimon_python_sdk/models/report_configuration_create_request.py +125 -0
  958. solvimon_python_sdk/models/report_configuration_response_wrapper.py +108 -0
  959. solvimon_python_sdk/models/report_configuration_update_request.py +128 -0
  960. solvimon_python_sdk/models/report_definition.py +179 -0
  961. solvimon_python_sdk/models/report_definition_create_request.py +179 -0
  962. solvimon_python_sdk/models/report_definition_response_wrapper.py +108 -0
  963. solvimon_python_sdk/models/report_definition_update_request.py +179 -0
  964. solvimon_python_sdk/models/report_generate_request.py +141 -0
  965. solvimon_python_sdk/models/report_generate_request_create_request.py +141 -0
  966. solvimon_python_sdk/models/report_generate_request_response_wrapper.py +108 -0
  967. solvimon_python_sdk/models/report_ingest_data_summary.py +106 -0
  968. solvimon_python_sdk/models/report_parameter.py +113 -0
  969. solvimon_python_sdk/models/report_parameter_value.py +101 -0
  970. solvimon_python_sdk/models/report_parameter_value_create_request.py +101 -0
  971. solvimon_python_sdk/models/report_parameter_value_update_request.py +101 -0
  972. solvimon_python_sdk/models/report_response_wrapper.py +108 -0
  973. solvimon_python_sdk/models/report_subscription.py +148 -0
  974. solvimon_python_sdk/models/report_subscription_create_request.py +148 -0
  975. solvimon_python_sdk/models/report_subscription_response_wrapper.py +108 -0
  976. solvimon_python_sdk/models/report_subscription_schedule.py +104 -0
  977. solvimon_python_sdk/models/report_subscription_schedule_create_request.py +104 -0
  978. solvimon_python_sdk/models/report_subscription_schedule_update_request.py +104 -0
  979. solvimon_python_sdk/models/report_subscription_update_request.py +148 -0
  980. solvimon_python_sdk/models/reprocess.py +137 -0
  981. solvimon_python_sdk/models/reprocess_create_request.py +134 -0
  982. solvimon_python_sdk/models/reprocess_customer.py +104 -0
  983. solvimon_python_sdk/models/reprocess_customer_create_request.py +104 -0
  984. solvimon_python_sdk/models/reprocess_invoice.py +91 -0
  985. solvimon_python_sdk/models/reprocess_invoice_create_request.py +91 -0
  986. solvimon_python_sdk/models/reprocess_not_matched.py +94 -0
  987. solvimon_python_sdk/models/reprocess_not_matched_create_request.py +94 -0
  988. solvimon_python_sdk/models/reprocess_response_wrapper.py +108 -0
  989. solvimon_python_sdk/models/reprocessing_delay.py +102 -0
  990. solvimon_python_sdk/models/reprocessing_settings.py +93 -0
  991. solvimon_python_sdk/models/reprocessing_settings_update_request.py +93 -0
  992. solvimon_python_sdk/models/request_usage_reports_parameters.py +100 -0
  993. solvimon_python_sdk/models/request_usage_reports_parameters_create_request.py +100 -0
  994. solvimon_python_sdk/models/required_action.py +107 -0
  995. solvimon_python_sdk/models/reset_password.py +91 -0
  996. solvimon_python_sdk/models/reset_password_create_request.py +91 -0
  997. solvimon_python_sdk/models/resource_identifier.py +101 -0
  998. solvimon_python_sdk/models/resource_identifier_create_request.py +101 -0
  999. solvimon_python_sdk/models/resubmit_e_invoice.py +91 -0
  1000. solvimon_python_sdk/models/resubmit_e_invoice_create_request.py +91 -0
  1001. solvimon_python_sdk/models/reviewer.py +101 -0
  1002. solvimon_python_sdk/models/role.py +109 -0
  1003. solvimon_python_sdk/models/role_create_request.py +109 -0
  1004. solvimon_python_sdk/models/role_paginated_response_wrapper.py +108 -0
  1005. solvimon_python_sdk/models/role_update_request.py +109 -0
  1006. solvimon_python_sdk/models/rounding_setting.py +111 -0
  1007. solvimon_python_sdk/models/rounding_setting_update_request.py +111 -0
  1008. solvimon_python_sdk/models/s3.py +109 -0
  1009. solvimon_python_sdk/models/search.py +114 -0
  1010. solvimon_python_sdk/models/search_create_request.py +114 -0
  1011. solvimon_python_sdk/models/search_field.py +97 -0
  1012. solvimon_python_sdk/models/search_field_create_request.py +97 -0
  1013. solvimon_python_sdk/models/seat_assignment.py +128 -0
  1014. solvimon_python_sdk/models/seat_assignment_create_request.py +128 -0
  1015. solvimon_python_sdk/models/seat_assignment_response_wrapper.py +108 -0
  1016. solvimon_python_sdk/models/seat_assignment_update_request.py +128 -0
  1017. solvimon_python_sdk/models/selection_rule.py +105 -0
  1018. solvimon_python_sdk/models/selection_rule_create_request.py +105 -0
  1019. solvimon_python_sdk/models/selection_rule_field.py +91 -0
  1020. solvimon_python_sdk/models/selection_rule_field_create_request.py +91 -0
  1021. solvimon_python_sdk/models/selection_rule_resource.py +127 -0
  1022. solvimon_python_sdk/models/selection_rule_update_request.py +105 -0
  1023. solvimon_python_sdk/models/seller_details.py +89 -0
  1024. solvimon_python_sdk/models/seller_details_create_request.py +89 -0
  1025. solvimon_python_sdk/models/seller_details_update_request.py +89 -0
  1026. solvimon_python_sdk/models/send_email_invoice_configuration.py +105 -0
  1027. solvimon_python_sdk/models/send_email_payment_configuration.py +89 -0
  1028. solvimon_python_sdk/models/send_email_pricing_plan_subscription_configuration.py +89 -0
  1029. solvimon_python_sdk/models/send_email_to_customer.py +175 -0
  1030. solvimon_python_sdk/models/send_email_to_customer_update_request.py +175 -0
  1031. solvimon_python_sdk/models/send_email_wallet_configuration.py +89 -0
  1032. solvimon_python_sdk/models/send_webhook_action.py +89 -0
  1033. solvimon_python_sdk/models/send_webhook_action_update_request.py +89 -0
  1034. solvimon_python_sdk/models/signature_request.py +148 -0
  1035. solvimon_python_sdk/models/signature_request_quote_version.py +91 -0
  1036. solvimon_python_sdk/models/signature_request_recipient_action.py +101 -0
  1037. solvimon_python_sdk/models/signature_request_recipient_action_create_request.py +98 -0
  1038. solvimon_python_sdk/models/signature_request_recipient_data.py +135 -0
  1039. solvimon_python_sdk/models/snowflake.py +97 -0
  1040. solvimon_python_sdk/models/sso_authentication_provider_variant_settings.py +89 -0
  1041. solvimon_python_sdk/models/sso_variant.py +113 -0
  1042. solvimon_python_sdk/models/sso_variant_create_request.py +113 -0
  1043. solvimon_python_sdk/models/sso_variant_update_request.py +113 -0
  1044. solvimon_python_sdk/models/stripe_integration_details.py +89 -0
  1045. solvimon_python_sdk/models/stripe_payment_action.py +91 -0
  1046. solvimon_python_sdk/models/stripe_payment_gateway_integration.py +91 -0
  1047. solvimon_python_sdk/models/stripe_payment_method_option.py +89 -0
  1048. solvimon_python_sdk/models/stripe_required_action.py +95 -0
  1049. solvimon_python_sdk/models/stripe_tokenization_request.py +89 -0
  1050. solvimon_python_sdk/models/stripe_tokenization_request_create_request.py +89 -0
  1051. solvimon_python_sdk/models/system_ownership_details.py +95 -0
  1052. solvimon_python_sdk/models/tax_calculation_integration.py +118 -0
  1053. solvimon_python_sdk/models/tax_calculation_integration_create_request.py +118 -0
  1054. solvimon_python_sdk/models/tax_calculation_integration_update_request.py +118 -0
  1055. solvimon_python_sdk/models/tax_id.py +111 -0
  1056. solvimon_python_sdk/models/tax_id_create_request.py +111 -0
  1057. solvimon_python_sdk/models/tax_id_type_response.py +97 -0
  1058. solvimon_python_sdk/models/tax_id_validation.py +107 -0
  1059. solvimon_python_sdk/models/tax_id_validation_wrapper.py +96 -0
  1060. solvimon_python_sdk/models/tax_registration.py +112 -0
  1061. solvimon_python_sdk/models/tax_registration_create_request.py +112 -0
  1062. solvimon_python_sdk/models/tax_registration_update_request.py +112 -0
  1063. solvimon_python_sdk/models/tax_settings.py +89 -0
  1064. solvimon_python_sdk/models/tax_settings_create_request.py +89 -0
  1065. solvimon_python_sdk/models/team_member_paginated_response_wrapper.py +96 -0
  1066. solvimon_python_sdk/models/team_member_representation.py +109 -0
  1067. solvimon_python_sdk/models/team_member_representation_create_request.py +109 -0
  1068. solvimon_python_sdk/models/team_member_representation_update_request.py +109 -0
  1069. solvimon_python_sdk/models/team_representation.py +106 -0
  1070. solvimon_python_sdk/models/team_representation_create_request.py +106 -0
  1071. solvimon_python_sdk/models/template_pricing_plan_subscription.py +101 -0
  1072. solvimon_python_sdk/models/template_pricing_plan_subscription_update_request.py +101 -0
  1073. solvimon_python_sdk/models/test_connection_response.py +109 -0
  1074. solvimon_python_sdk/models/threshold.py +97 -0
  1075. solvimon_python_sdk/models/total_discount.py +117 -0
  1076. solvimon_python_sdk/models/trigger_report_request.py +96 -0
  1077. solvimon_python_sdk/models/trigger_report_request_create_request.py +96 -0
  1078. solvimon_python_sdk/models/uk_local.py +112 -0
  1079. solvimon_python_sdk/models/unit_name.py +112 -0
  1080. solvimon_python_sdk/models/unit_name_create_request.py +112 -0
  1081. solvimon_python_sdk/models/unit_name_update_request.py +112 -0
  1082. solvimon_python_sdk/models/us_local.py +136 -0
  1083. solvimon_python_sdk/models/usage_limit.py +139 -0
  1084. solvimon_python_sdk/models/usage_limit_create_request.py +136 -0
  1085. solvimon_python_sdk/models/usage_limit_response_wrapper.py +108 -0
  1086. solvimon_python_sdk/models/usage_limit_status.py +118 -0
  1087. solvimon_python_sdk/models/usage_limit_status_response.py +106 -0
  1088. solvimon_python_sdk/models/usage_limit_status_update.py +99 -0
  1089. solvimon_python_sdk/models/usage_limit_status_update_create_request.py +96 -0
  1090. solvimon_python_sdk/models/usage_limit_update_request.py +139 -0
  1091. solvimon_python_sdk/models/usage_limit_value.py +112 -0
  1092. solvimon_python_sdk/models/usage_limit_value_create_request.py +112 -0
  1093. solvimon_python_sdk/models/usage_limit_value_update_request.py +112 -0
  1094. solvimon_python_sdk/models/usage_threshold.py +124 -0
  1095. solvimon_python_sdk/models/usage_trigger.py +97 -0
  1096. solvimon_python_sdk/models/usage_trigger_create_request.py +97 -0
  1097. solvimon_python_sdk/models/usage_trigger_event.py +131 -0
  1098. solvimon_python_sdk/models/usage_workflow.py +110 -0
  1099. solvimon_python_sdk/models/usage_workflow_create_request.py +110 -0
  1100. solvimon_python_sdk/models/usage_workflow_update_request.py +110 -0
  1101. solvimon_python_sdk/models/used_exchange_rate.py +97 -0
  1102. solvimon_python_sdk/models/used_exchange_rate_create_request.py +97 -0
  1103. solvimon_python_sdk/models/used_exchange_rate_update_request.py +97 -0
  1104. solvimon_python_sdk/models/used_wallet_grant_detail.py +111 -0
  1105. solvimon_python_sdk/models/user.py +158 -0
  1106. solvimon_python_sdk/models/user_create_request.py +158 -0
  1107. solvimon_python_sdk/models/user_create_request_identity.py +158 -0
  1108. solvimon_python_sdk/models/user_invite.py +109 -0
  1109. solvimon_python_sdk/models/user_invite_create_request.py +109 -0
  1110. solvimon_python_sdk/models/user_paginated_response_wrapper.py +108 -0
  1111. solvimon_python_sdk/models/user_search_filter.py +95 -0
  1112. solvimon_python_sdk/models/user_search_filter_create_request.py +95 -0
  1113. solvimon_python_sdk/models/user_update_request.py +158 -0
  1114. solvimon_python_sdk/models/user_update_request_identity.py +158 -0
  1115. solvimon_python_sdk/models/username_password.py +91 -0
  1116. solvimon_python_sdk/models/username_password_create_request.py +91 -0
  1117. solvimon_python_sdk/models/volume.py +95 -0
  1118. solvimon_python_sdk/models/volume_create_request.py +95 -0
  1119. solvimon_python_sdk/models/wallet.py +151 -0
  1120. solvimon_python_sdk/models/wallet_balance_status.py +131 -0
  1121. solvimon_python_sdk/models/wallet_balance_status_request.py +92 -0
  1122. solvimon_python_sdk/models/wallet_balance_status_request_create_request.py +92 -0
  1123. solvimon_python_sdk/models/wallet_balance_value.py +103 -0
  1124. solvimon_python_sdk/models/wallet_balance_value_create_request.py +103 -0
  1125. solvimon_python_sdk/models/wallet_create_request.py +148 -0
  1126. solvimon_python_sdk/models/wallet_customer_balance_detail.py +113 -0
  1127. solvimon_python_sdk/models/wallet_grant.py +200 -0
  1128. solvimon_python_sdk/models/wallet_grant_create_request.py +200 -0
  1129. solvimon_python_sdk/models/wallet_grant_response_wrapper.py +108 -0
  1130. solvimon_python_sdk/models/wallet_grant_seat.py +95 -0
  1131. solvimon_python_sdk/models/wallet_grant_seat_create_request.py +95 -0
  1132. solvimon_python_sdk/models/wallet_response_wrapper.py +108 -0
  1133. solvimon_python_sdk/models/wallet_threshold.py +112 -0
  1134. solvimon_python_sdk/models/wallet_trigger.py +127 -0
  1135. solvimon_python_sdk/models/wallet_trigger_create_request.py +127 -0
  1136. solvimon_python_sdk/models/wallet_trigger_event.py +99 -0
  1137. solvimon_python_sdk/models/wallet_trigger_wallet_balance.py +102 -0
  1138. solvimon_python_sdk/models/wallet_type.py +164 -0
  1139. solvimon_python_sdk/models/wallet_type_balance.py +89 -0
  1140. solvimon_python_sdk/models/wallet_type_balance_update_request.py +89 -0
  1141. solvimon_python_sdk/models/wallet_type_create_request.py +164 -0
  1142. solvimon_python_sdk/models/wallet_type_credit.py +111 -0
  1143. solvimon_python_sdk/models/wallet_type_credit_amount_grant.py +111 -0
  1144. solvimon_python_sdk/models/wallet_type_credit_credits_grant.py +89 -0
  1145. solvimon_python_sdk/models/wallet_type_credit_update_request.py +111 -0
  1146. solvimon_python_sdk/models/wallet_type_response_wrapper.py +108 -0
  1147. solvimon_python_sdk/models/wallet_type_update_request.py +164 -0
  1148. solvimon_python_sdk/models/wallet_wallet_balance.py +107 -0
  1149. solvimon_python_sdk/models/wallet_workflow.py +105 -0
  1150. solvimon_python_sdk/models/wallet_workflow_create_request.py +105 -0
  1151. solvimon_python_sdk/models/wallet_workflow_update_request.py +105 -0
  1152. solvimon_python_sdk/models/webhook.py +200 -0
  1153. solvimon_python_sdk/models/webhook_action.py +91 -0
  1154. solvimon_python_sdk/models/webhook_action_response_wrapper.py +98 -0
  1155. solvimon_python_sdk/models/webhook_connection_response.py +95 -0
  1156. solvimon_python_sdk/models/webhook_create_request.py +200 -0
  1157. solvimon_python_sdk/models/webhook_event.py +131 -0
  1158. solvimon_python_sdk/models/webhook_event_failure_data.py +95 -0
  1159. solvimon_python_sdk/models/webhook_event_response_wrapper.py +108 -0
  1160. solvimon_python_sdk/models/webhook_response_wrapper.py +108 -0
  1161. solvimon_python_sdk/models/webhook_update_request.py +200 -0
  1162. solvimon_python_sdk/models/workflow.py +202 -0
  1163. solvimon_python_sdk/models/workflow_action.py +160 -0
  1164. solvimon_python_sdk/models/workflow_action_create_request.py +160 -0
  1165. solvimon_python_sdk/models/workflow_action_execution.py +149 -0
  1166. solvimon_python_sdk/models/workflow_action_execution_create_request.py +146 -0
  1167. solvimon_python_sdk/models/workflow_action_execution_update_request.py +149 -0
  1168. solvimon_python_sdk/models/workflow_action_executions_paginated_response.py +108 -0
  1169. solvimon_python_sdk/models/workflow_action_update_request.py +160 -0
  1170. solvimon_python_sdk/models/workflow_action_update_request_transaction.py +160 -0
  1171. solvimon_python_sdk/models/workflow_conditions.py +111 -0
  1172. solvimon_python_sdk/models/workflow_conditions_comparison.py +103 -0
  1173. solvimon_python_sdk/models/workflow_conditions_create_request.py +111 -0
  1174. solvimon_python_sdk/models/workflow_conditions_group.py +101 -0
  1175. solvimon_python_sdk/models/workflow_conditions_result_comparison.py +105 -0
  1176. solvimon_python_sdk/models/workflow_conditions_result_group.py +101 -0
  1177. solvimon_python_sdk/models/workflow_conditions_result_tree.py +123 -0
  1178. solvimon_python_sdk/models/workflow_conditions_result_tree_create_request.py +123 -0
  1179. solvimon_python_sdk/models/workflow_conditions_result_tree_update_request.py +123 -0
  1180. solvimon_python_sdk/models/workflow_conditions_update_request.py +111 -0
  1181. solvimon_python_sdk/models/workflow_create_request.py +190 -0
  1182. solvimon_python_sdk/models/workflow_create_request_transaction.py +202 -0
  1183. solvimon_python_sdk/models/workflow_init.py +102 -0
  1184. solvimon_python_sdk/models/workflow_init_create_request.py +102 -0
  1185. solvimon_python_sdk/models/workflow_paginated_response.py +108 -0
  1186. solvimon_python_sdk/models/workflow_trigger.py +157 -0
  1187. solvimon_python_sdk/models/workflow_trigger_create_request.py +154 -0
  1188. solvimon_python_sdk/models/workflow_trigger_paginated_response.py +108 -0
  1189. solvimon_python_sdk/models/workflow_trigger_update_request.py +157 -0
  1190. solvimon_python_sdk/models/workflow_update_request.py +202 -0
  1191. solvimon_python_sdk/py.typed +0 -0
  1192. solvimon_python_sdk/rest.py +335 -0
  1193. solvimon_python_sdk-0.0.4b0.dist-info/METADATA +1725 -0
  1194. solvimon_python_sdk-0.0.4b0.dist-info/RECORD +1196 -0
  1195. solvimon_python_sdk-0.0.4b0.dist-info/WHEEL +5 -0
  1196. solvimon_python_sdk-0.0.4b0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,3478 @@
1
+ """
2
+ Solvimon API
3
+
4
+ Unified Solvimon API covering Configuration, Event, Identity, and Transaction domains.
5
+
6
+ The version of the OpenAPI document: 0.0.4-beta
7
+ Contact: contact@solvimon.com
8
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
9
+
10
+ Do not edit the class manually.
11
+ """ # noqa: E501
12
+
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from pydantic import Field, StrictBool, StrictInt, StrictStr
20
+ from typing import Dict, List, Optional
21
+ from typing_extensions import Annotated
22
+ from solvimon_python_sdk.models.product import Product
23
+ from solvimon_python_sdk.models.product_create_request import ProductCreateRequest
24
+ from solvimon_python_sdk.models.product_response_wrapper import ProductResponseWrapper
25
+ from solvimon_python_sdk.models.product_update_request import ProductUpdateRequest
26
+ from solvimon_python_sdk.models.search_create_request import SearchCreateRequest
27
+
28
+ from solvimon_python_sdk.api_client import ApiClient, RequestSerialized
29
+ from solvimon_python_sdk.api_response import ApiResponse
30
+ from solvimon_python_sdk.rest import RESTResponseType
31
+
32
+
33
+ class ProductsApi:
34
+ """NOTE: This class is auto generated by OpenAPI Generator
35
+ Ref: https://openapi-generator.tech
36
+
37
+ Do not edit the class manually.
38
+ """
39
+
40
+ def __init__(self, api_client=None) -> None:
41
+ if api_client is None:
42
+ api_client = ApiClient.get_default()
43
+ self.api_client = api_client
44
+
45
+
46
+ @validate_call
47
+ def delete_products_by_resource_id_or_reference(
48
+ self,
49
+ version: Annotated[StrictStr, Field(description="version")],
50
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
51
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
52
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
53
+ _request_timeout: Union[
54
+ None,
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Tuple[
57
+ Annotated[StrictFloat, Field(gt=0)],
58
+ Annotated[StrictFloat, Field(gt=0)]
59
+ ]
60
+ ] = None,
61
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
62
+ _content_type: Optional[StrictStr] = None,
63
+ _headers: Optional[Dict[StrictStr, Any]] = None,
64
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
65
+ ) -> Product:
66
+ """Delete a product
67
+
68
+ Requires the PRODUCT.DELETE permission.
69
+
70
+ :param version: version (required)
71
+ :type version: str
72
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
73
+ :type resource_id_or_reference: str
74
+ :param x_platform_id: Platform ID.
75
+ :type x_platform_id: str
76
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
77
+ :type align_product_item_status: bool
78
+ :param _request_timeout: timeout setting for this request. If one
79
+ number provided, it will be total request
80
+ timeout. It can also be a pair (tuple) of
81
+ (connection, read) timeouts.
82
+ :type _request_timeout: int, tuple(int, int), optional
83
+ :param _request_auth: set to override the auth_settings for an a single
84
+ request; this effectively ignores the
85
+ authentication in the spec for a single request.
86
+ :type _request_auth: dict, optional
87
+ :param _content_type: force content-type for the request.
88
+ :type _content_type: str, Optional
89
+ :param _headers: set to override the headers for a single
90
+ request; this effectively ignores the headers
91
+ in the spec for a single request.
92
+ :type _headers: dict, optional
93
+ :param _host_index: set to override the host_index for a single
94
+ request; this effectively ignores the host_index
95
+ in the spec for a single request.
96
+ :type _host_index: int, optional
97
+ :return: Returns the result object.
98
+ """ # noqa: E501
99
+
100
+ _param = self._delete_products_by_resource_id_or_reference_serialize(
101
+ version=version,
102
+ resource_id_or_reference=resource_id_or_reference,
103
+ x_platform_id=x_platform_id,
104
+ align_product_item_status=align_product_item_status,
105
+ _request_auth=_request_auth,
106
+ _content_type=_content_type,
107
+ _headers=_headers,
108
+ _host_index=_host_index
109
+ )
110
+
111
+ _response_types_map: Dict[str, Optional[str]] = {
112
+ '200': "Product",
113
+ '400': "ApiError",
114
+ '401': "ApiError",
115
+ '403': "ApiError",
116
+ '500': "ApiError",
117
+ }
118
+ response_data = self.api_client.call_api(
119
+ *_param,
120
+ _request_timeout=_request_timeout
121
+ )
122
+ response_data.read()
123
+ return self.api_client.response_deserialize(
124
+ response_data=response_data,
125
+ response_types_map=_response_types_map,
126
+ ).data
127
+
128
+
129
+ @validate_call
130
+ def delete_products_by_resource_id_or_reference_with_http_info(
131
+ self,
132
+ version: Annotated[StrictStr, Field(description="version")],
133
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
134
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
135
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
136
+ _request_timeout: Union[
137
+ None,
138
+ Annotated[StrictFloat, Field(gt=0)],
139
+ Tuple[
140
+ Annotated[StrictFloat, Field(gt=0)],
141
+ Annotated[StrictFloat, Field(gt=0)]
142
+ ]
143
+ ] = None,
144
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
145
+ _content_type: Optional[StrictStr] = None,
146
+ _headers: Optional[Dict[StrictStr, Any]] = None,
147
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
148
+ ) -> ApiResponse[Product]:
149
+ """Delete a product
150
+
151
+ Requires the PRODUCT.DELETE permission.
152
+
153
+ :param version: version (required)
154
+ :type version: str
155
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
156
+ :type resource_id_or_reference: str
157
+ :param x_platform_id: Platform ID.
158
+ :type x_platform_id: str
159
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
160
+ :type align_product_item_status: bool
161
+ :param _request_timeout: timeout setting for this request. If one
162
+ number provided, it will be total request
163
+ timeout. It can also be a pair (tuple) of
164
+ (connection, read) timeouts.
165
+ :type _request_timeout: int, tuple(int, int), optional
166
+ :param _request_auth: set to override the auth_settings for an a single
167
+ request; this effectively ignores the
168
+ authentication in the spec for a single request.
169
+ :type _request_auth: dict, optional
170
+ :param _content_type: force content-type for the request.
171
+ :type _content_type: str, Optional
172
+ :param _headers: set to override the headers for a single
173
+ request; this effectively ignores the headers
174
+ in the spec for a single request.
175
+ :type _headers: dict, optional
176
+ :param _host_index: set to override the host_index for a single
177
+ request; this effectively ignores the host_index
178
+ in the spec for a single request.
179
+ :type _host_index: int, optional
180
+ :return: Returns the result object.
181
+ """ # noqa: E501
182
+
183
+ _param = self._delete_products_by_resource_id_or_reference_serialize(
184
+ version=version,
185
+ resource_id_or_reference=resource_id_or_reference,
186
+ x_platform_id=x_platform_id,
187
+ align_product_item_status=align_product_item_status,
188
+ _request_auth=_request_auth,
189
+ _content_type=_content_type,
190
+ _headers=_headers,
191
+ _host_index=_host_index
192
+ )
193
+
194
+ _response_types_map: Dict[str, Optional[str]] = {
195
+ '200': "Product",
196
+ '400': "ApiError",
197
+ '401': "ApiError",
198
+ '403': "ApiError",
199
+ '500': "ApiError",
200
+ }
201
+ response_data = self.api_client.call_api(
202
+ *_param,
203
+ _request_timeout=_request_timeout
204
+ )
205
+ response_data.read()
206
+ return self.api_client.response_deserialize(
207
+ response_data=response_data,
208
+ response_types_map=_response_types_map,
209
+ )
210
+
211
+
212
+ @validate_call
213
+ def delete_products_by_resource_id_or_reference_without_preload_content(
214
+ self,
215
+ version: Annotated[StrictStr, Field(description="version")],
216
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
217
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
218
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
219
+ _request_timeout: Union[
220
+ None,
221
+ Annotated[StrictFloat, Field(gt=0)],
222
+ Tuple[
223
+ Annotated[StrictFloat, Field(gt=0)],
224
+ Annotated[StrictFloat, Field(gt=0)]
225
+ ]
226
+ ] = None,
227
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
228
+ _content_type: Optional[StrictStr] = None,
229
+ _headers: Optional[Dict[StrictStr, Any]] = None,
230
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
231
+ ) -> RESTResponseType:
232
+ """Delete a product
233
+
234
+ Requires the PRODUCT.DELETE permission.
235
+
236
+ :param version: version (required)
237
+ :type version: str
238
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
239
+ :type resource_id_or_reference: str
240
+ :param x_platform_id: Platform ID.
241
+ :type x_platform_id: str
242
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
243
+ :type align_product_item_status: bool
244
+ :param _request_timeout: timeout setting for this request. If one
245
+ number provided, it will be total request
246
+ timeout. It can also be a pair (tuple) of
247
+ (connection, read) timeouts.
248
+ :type _request_timeout: int, tuple(int, int), optional
249
+ :param _request_auth: set to override the auth_settings for an a single
250
+ request; this effectively ignores the
251
+ authentication in the spec for a single request.
252
+ :type _request_auth: dict, optional
253
+ :param _content_type: force content-type for the request.
254
+ :type _content_type: str, Optional
255
+ :param _headers: set to override the headers for a single
256
+ request; this effectively ignores the headers
257
+ in the spec for a single request.
258
+ :type _headers: dict, optional
259
+ :param _host_index: set to override the host_index for a single
260
+ request; this effectively ignores the host_index
261
+ in the spec for a single request.
262
+ :type _host_index: int, optional
263
+ :return: Returns the result object.
264
+ """ # noqa: E501
265
+
266
+ _param = self._delete_products_by_resource_id_or_reference_serialize(
267
+ version=version,
268
+ resource_id_or_reference=resource_id_or_reference,
269
+ x_platform_id=x_platform_id,
270
+ align_product_item_status=align_product_item_status,
271
+ _request_auth=_request_auth,
272
+ _content_type=_content_type,
273
+ _headers=_headers,
274
+ _host_index=_host_index
275
+ )
276
+
277
+ _response_types_map: Dict[str, Optional[str]] = {
278
+ '200': "Product",
279
+ '400': "ApiError",
280
+ '401': "ApiError",
281
+ '403': "ApiError",
282
+ '500': "ApiError",
283
+ }
284
+ response_data = self.api_client.call_api(
285
+ *_param,
286
+ _request_timeout=_request_timeout
287
+ )
288
+ return response_data.response
289
+
290
+
291
+ def _delete_products_by_resource_id_or_reference_serialize(
292
+ self,
293
+ version,
294
+ resource_id_or_reference,
295
+ x_platform_id,
296
+ align_product_item_status,
297
+ _request_auth,
298
+ _content_type,
299
+ _headers,
300
+ _host_index,
301
+ ) -> RequestSerialized:
302
+
303
+ _host = None
304
+
305
+ _collection_formats: Dict[str, str] = {
306
+ }
307
+
308
+ _path_params: Dict[str, str] = {}
309
+ _query_params: List[Tuple[str, str]] = []
310
+ _header_params: Dict[str, Optional[str]] = _headers or {}
311
+ _form_params: List[Tuple[str, str]] = []
312
+ _files: Dict[
313
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
314
+ ] = {}
315
+ _body_params: Optional[bytes] = None
316
+
317
+ # process the path parameters
318
+ if version is not None:
319
+ _path_params['version'] = version
320
+ if resource_id_or_reference is not None:
321
+ _path_params['resourceIdOrReference'] = resource_id_or_reference
322
+ # process the query parameters
323
+ if align_product_item_status is not None:
324
+
325
+ _query_params.append(('align_product_item_status', align_product_item_status))
326
+
327
+ # process the header parameters
328
+ if x_platform_id is not None:
329
+ _header_params['x-platform-id'] = x_platform_id
330
+ # process the form parameters
331
+ # process the body parameter
332
+
333
+
334
+ # set the HTTP header `Accept`
335
+ if 'Accept' not in _header_params:
336
+ _header_params['Accept'] = self.api_client.select_header_accept(
337
+ [
338
+ 'application/json',
339
+ '*/*'
340
+ ]
341
+ )
342
+
343
+
344
+ # authentication setting
345
+ _auth_settings: List[str] = [
346
+ 'JWT-Authentication',
347
+ 'API-Key'
348
+ ]
349
+
350
+ return self.api_client.param_serialize(
351
+ method='DELETE',
352
+ resource_path='/v{version}/products/{resourceIdOrReference}',
353
+ path_params=_path_params,
354
+ query_params=_query_params,
355
+ header_params=_header_params,
356
+ body=_body_params,
357
+ post_params=_form_params,
358
+ files=_files,
359
+ auth_settings=_auth_settings,
360
+ collection_formats=_collection_formats,
361
+ _host=_host,
362
+ _request_auth=_request_auth
363
+ )
364
+
365
+
366
+
367
+
368
+ @validate_call
369
+ def get_products(
370
+ self,
371
+ version: Annotated[StrictStr, Field(description="version")],
372
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
373
+ statuses: Annotated[Optional[List[StrictStr]], Field(description="Filter products based on product status(es)")] = None,
374
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
375
+ custom_field: Annotated[Optional[StrictStr], Field(description="Filter the response by a custom field value.")] = None,
376
+ product_category_id: Annotated[Optional[StrictStr], Field(description="Filter the response by a product category value.")] = None,
377
+ customer_id: Annotated[Optional[StrictStr], Field(description="The resource id of the customer.")] = None,
378
+ _request_timeout: Union[
379
+ None,
380
+ Annotated[StrictFloat, Field(gt=0)],
381
+ Tuple[
382
+ Annotated[StrictFloat, Field(gt=0)],
383
+ Annotated[StrictFloat, Field(gt=0)]
384
+ ]
385
+ ] = None,
386
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
387
+ _content_type: Optional[StrictStr] = None,
388
+ _headers: Optional[Dict[StrictStr, Any]] = None,
389
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
390
+ ) -> ProductResponseWrapper:
391
+ """Get a list of all products
392
+
393
+ Requires the PRODUCT.VIEW permission.
394
+
395
+ :param version: version (required)
396
+ :type version: str
397
+ :param x_platform_id: Platform ID.
398
+ :type x_platform_id: str
399
+ :param statuses: Filter products based on product status(es)
400
+ :type statuses: List[str]
401
+ :param expand: The id fields of the resources that are going to be expanded.
402
+ :type expand: List[str]
403
+ :param custom_field: Filter the response by a custom field value.
404
+ :type custom_field: str
405
+ :param product_category_id: Filter the response by a product category value.
406
+ :type product_category_id: str
407
+ :param customer_id: The resource id of the customer.
408
+ :type customer_id: str
409
+ :param _request_timeout: timeout setting for this request. If one
410
+ number provided, it will be total request
411
+ timeout. It can also be a pair (tuple) of
412
+ (connection, read) timeouts.
413
+ :type _request_timeout: int, tuple(int, int), optional
414
+ :param _request_auth: set to override the auth_settings for an a single
415
+ request; this effectively ignores the
416
+ authentication in the spec for a single request.
417
+ :type _request_auth: dict, optional
418
+ :param _content_type: force content-type for the request.
419
+ :type _content_type: str, Optional
420
+ :param _headers: set to override the headers for a single
421
+ request; this effectively ignores the headers
422
+ in the spec for a single request.
423
+ :type _headers: dict, optional
424
+ :param _host_index: set to override the host_index for a single
425
+ request; this effectively ignores the host_index
426
+ in the spec for a single request.
427
+ :type _host_index: int, optional
428
+ :return: Returns the result object.
429
+ """ # noqa: E501
430
+
431
+ _param = self._get_products_serialize(
432
+ version=version,
433
+ x_platform_id=x_platform_id,
434
+ statuses=statuses,
435
+ expand=expand,
436
+ custom_field=custom_field,
437
+ product_category_id=product_category_id,
438
+ customer_id=customer_id,
439
+ _request_auth=_request_auth,
440
+ _content_type=_content_type,
441
+ _headers=_headers,
442
+ _host_index=_host_index
443
+ )
444
+
445
+ _response_types_map: Dict[str, Optional[str]] = {
446
+ '200': "ProductResponseWrapper",
447
+ '400': "ApiError",
448
+ '401': "ApiError",
449
+ '403': "ApiError",
450
+ '500': "ApiError",
451
+ }
452
+ response_data = self.api_client.call_api(
453
+ *_param,
454
+ _request_timeout=_request_timeout
455
+ )
456
+ response_data.read()
457
+ return self.api_client.response_deserialize(
458
+ response_data=response_data,
459
+ response_types_map=_response_types_map,
460
+ ).data
461
+
462
+
463
+ @validate_call
464
+ def get_products_with_http_info(
465
+ self,
466
+ version: Annotated[StrictStr, Field(description="version")],
467
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
468
+ statuses: Annotated[Optional[List[StrictStr]], Field(description="Filter products based on product status(es)")] = None,
469
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
470
+ custom_field: Annotated[Optional[StrictStr], Field(description="Filter the response by a custom field value.")] = None,
471
+ product_category_id: Annotated[Optional[StrictStr], Field(description="Filter the response by a product category value.")] = None,
472
+ customer_id: Annotated[Optional[StrictStr], Field(description="The resource id of the customer.")] = None,
473
+ _request_timeout: Union[
474
+ None,
475
+ Annotated[StrictFloat, Field(gt=0)],
476
+ Tuple[
477
+ Annotated[StrictFloat, Field(gt=0)],
478
+ Annotated[StrictFloat, Field(gt=0)]
479
+ ]
480
+ ] = None,
481
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
482
+ _content_type: Optional[StrictStr] = None,
483
+ _headers: Optional[Dict[StrictStr, Any]] = None,
484
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
485
+ ) -> ApiResponse[ProductResponseWrapper]:
486
+ """Get a list of all products
487
+
488
+ Requires the PRODUCT.VIEW permission.
489
+
490
+ :param version: version (required)
491
+ :type version: str
492
+ :param x_platform_id: Platform ID.
493
+ :type x_platform_id: str
494
+ :param statuses: Filter products based on product status(es)
495
+ :type statuses: List[str]
496
+ :param expand: The id fields of the resources that are going to be expanded.
497
+ :type expand: List[str]
498
+ :param custom_field: Filter the response by a custom field value.
499
+ :type custom_field: str
500
+ :param product_category_id: Filter the response by a product category value.
501
+ :type product_category_id: str
502
+ :param customer_id: The resource id of the customer.
503
+ :type customer_id: str
504
+ :param _request_timeout: timeout setting for this request. If one
505
+ number provided, it will be total request
506
+ timeout. It can also be a pair (tuple) of
507
+ (connection, read) timeouts.
508
+ :type _request_timeout: int, tuple(int, int), optional
509
+ :param _request_auth: set to override the auth_settings for an a single
510
+ request; this effectively ignores the
511
+ authentication in the spec for a single request.
512
+ :type _request_auth: dict, optional
513
+ :param _content_type: force content-type for the request.
514
+ :type _content_type: str, Optional
515
+ :param _headers: set to override the headers for a single
516
+ request; this effectively ignores the headers
517
+ in the spec for a single request.
518
+ :type _headers: dict, optional
519
+ :param _host_index: set to override the host_index for a single
520
+ request; this effectively ignores the host_index
521
+ in the spec for a single request.
522
+ :type _host_index: int, optional
523
+ :return: Returns the result object.
524
+ """ # noqa: E501
525
+
526
+ _param = self._get_products_serialize(
527
+ version=version,
528
+ x_platform_id=x_platform_id,
529
+ statuses=statuses,
530
+ expand=expand,
531
+ custom_field=custom_field,
532
+ product_category_id=product_category_id,
533
+ customer_id=customer_id,
534
+ _request_auth=_request_auth,
535
+ _content_type=_content_type,
536
+ _headers=_headers,
537
+ _host_index=_host_index
538
+ )
539
+
540
+ _response_types_map: Dict[str, Optional[str]] = {
541
+ '200': "ProductResponseWrapper",
542
+ '400': "ApiError",
543
+ '401': "ApiError",
544
+ '403': "ApiError",
545
+ '500': "ApiError",
546
+ }
547
+ response_data = self.api_client.call_api(
548
+ *_param,
549
+ _request_timeout=_request_timeout
550
+ )
551
+ response_data.read()
552
+ return self.api_client.response_deserialize(
553
+ response_data=response_data,
554
+ response_types_map=_response_types_map,
555
+ )
556
+
557
+
558
+ @validate_call
559
+ def get_products_without_preload_content(
560
+ self,
561
+ version: Annotated[StrictStr, Field(description="version")],
562
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
563
+ statuses: Annotated[Optional[List[StrictStr]], Field(description="Filter products based on product status(es)")] = None,
564
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
565
+ custom_field: Annotated[Optional[StrictStr], Field(description="Filter the response by a custom field value.")] = None,
566
+ product_category_id: Annotated[Optional[StrictStr], Field(description="Filter the response by a product category value.")] = None,
567
+ customer_id: Annotated[Optional[StrictStr], Field(description="The resource id of the customer.")] = None,
568
+ _request_timeout: Union[
569
+ None,
570
+ Annotated[StrictFloat, Field(gt=0)],
571
+ Tuple[
572
+ Annotated[StrictFloat, Field(gt=0)],
573
+ Annotated[StrictFloat, Field(gt=0)]
574
+ ]
575
+ ] = None,
576
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
577
+ _content_type: Optional[StrictStr] = None,
578
+ _headers: Optional[Dict[StrictStr, Any]] = None,
579
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
580
+ ) -> RESTResponseType:
581
+ """Get a list of all products
582
+
583
+ Requires the PRODUCT.VIEW permission.
584
+
585
+ :param version: version (required)
586
+ :type version: str
587
+ :param x_platform_id: Platform ID.
588
+ :type x_platform_id: str
589
+ :param statuses: Filter products based on product status(es)
590
+ :type statuses: List[str]
591
+ :param expand: The id fields of the resources that are going to be expanded.
592
+ :type expand: List[str]
593
+ :param custom_field: Filter the response by a custom field value.
594
+ :type custom_field: str
595
+ :param product_category_id: Filter the response by a product category value.
596
+ :type product_category_id: str
597
+ :param customer_id: The resource id of the customer.
598
+ :type customer_id: str
599
+ :param _request_timeout: timeout setting for this request. If one
600
+ number provided, it will be total request
601
+ timeout. It can also be a pair (tuple) of
602
+ (connection, read) timeouts.
603
+ :type _request_timeout: int, tuple(int, int), optional
604
+ :param _request_auth: set to override the auth_settings for an a single
605
+ request; this effectively ignores the
606
+ authentication in the spec for a single request.
607
+ :type _request_auth: dict, optional
608
+ :param _content_type: force content-type for the request.
609
+ :type _content_type: str, Optional
610
+ :param _headers: set to override the headers for a single
611
+ request; this effectively ignores the headers
612
+ in the spec for a single request.
613
+ :type _headers: dict, optional
614
+ :param _host_index: set to override the host_index for a single
615
+ request; this effectively ignores the host_index
616
+ in the spec for a single request.
617
+ :type _host_index: int, optional
618
+ :return: Returns the result object.
619
+ """ # noqa: E501
620
+
621
+ _param = self._get_products_serialize(
622
+ version=version,
623
+ x_platform_id=x_platform_id,
624
+ statuses=statuses,
625
+ expand=expand,
626
+ custom_field=custom_field,
627
+ product_category_id=product_category_id,
628
+ customer_id=customer_id,
629
+ _request_auth=_request_auth,
630
+ _content_type=_content_type,
631
+ _headers=_headers,
632
+ _host_index=_host_index
633
+ )
634
+
635
+ _response_types_map: Dict[str, Optional[str]] = {
636
+ '200': "ProductResponseWrapper",
637
+ '400': "ApiError",
638
+ '401': "ApiError",
639
+ '403': "ApiError",
640
+ '500': "ApiError",
641
+ }
642
+ response_data = self.api_client.call_api(
643
+ *_param,
644
+ _request_timeout=_request_timeout
645
+ )
646
+ return response_data.response
647
+
648
+
649
+ def _get_products_serialize(
650
+ self,
651
+ version,
652
+ x_platform_id,
653
+ statuses,
654
+ expand,
655
+ custom_field,
656
+ product_category_id,
657
+ customer_id,
658
+ _request_auth,
659
+ _content_type,
660
+ _headers,
661
+ _host_index,
662
+ ) -> RequestSerialized:
663
+
664
+ _host = None
665
+
666
+ _collection_formats: Dict[str, str] = {
667
+ 'statuses[]': 'multi',
668
+ 'expand[]': 'multi',
669
+ }
670
+
671
+ _path_params: Dict[str, str] = {}
672
+ _query_params: List[Tuple[str, str]] = []
673
+ _header_params: Dict[str, Optional[str]] = _headers or {}
674
+ _form_params: List[Tuple[str, str]] = []
675
+ _files: Dict[
676
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
677
+ ] = {}
678
+ _body_params: Optional[bytes] = None
679
+
680
+ # process the path parameters
681
+ if version is not None:
682
+ _path_params['version'] = version
683
+ # process the query parameters
684
+ if statuses is not None:
685
+
686
+ _query_params.append(('statuses[]', statuses))
687
+
688
+ if expand is not None:
689
+
690
+ _query_params.append(('expand[]', expand))
691
+
692
+ if custom_field is not None:
693
+
694
+ _query_params.append(('custom_field', custom_field))
695
+
696
+ if product_category_id is not None:
697
+
698
+ _query_params.append(('product_category_id', product_category_id))
699
+
700
+ if customer_id is not None:
701
+
702
+ _query_params.append(('customer_id', customer_id))
703
+
704
+ # process the header parameters
705
+ if x_platform_id is not None:
706
+ _header_params['x-platform-id'] = x_platform_id
707
+ # process the form parameters
708
+ # process the body parameter
709
+
710
+
711
+ # set the HTTP header `Accept`
712
+ if 'Accept' not in _header_params:
713
+ _header_params['Accept'] = self.api_client.select_header_accept(
714
+ [
715
+ 'application/json',
716
+ '*/*'
717
+ ]
718
+ )
719
+
720
+
721
+ # authentication setting
722
+ _auth_settings: List[str] = [
723
+ 'JWT-Authentication',
724
+ 'API-Key'
725
+ ]
726
+
727
+ return self.api_client.param_serialize(
728
+ method='GET',
729
+ resource_path='/v{version}/products',
730
+ path_params=_path_params,
731
+ query_params=_query_params,
732
+ header_params=_header_params,
733
+ body=_body_params,
734
+ post_params=_form_params,
735
+ files=_files,
736
+ auth_settings=_auth_settings,
737
+ collection_formats=_collection_formats,
738
+ _host=_host,
739
+ _request_auth=_request_auth
740
+ )
741
+
742
+
743
+
744
+
745
+ @validate_call
746
+ def get_products_by_resource_id_or_reference(
747
+ self,
748
+ version: Annotated[StrictStr, Field(description="version")],
749
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID or reference of the resource.")],
750
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
751
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
752
+ _request_timeout: Union[
753
+ None,
754
+ Annotated[StrictFloat, Field(gt=0)],
755
+ Tuple[
756
+ Annotated[StrictFloat, Field(gt=0)],
757
+ Annotated[StrictFloat, Field(gt=0)]
758
+ ]
759
+ ] = None,
760
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
761
+ _content_type: Optional[StrictStr] = None,
762
+ _headers: Optional[Dict[StrictStr, Any]] = None,
763
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
764
+ ) -> Product:
765
+ """Get a product
766
+
767
+ Requires the PRODUCT.VIEW permission.
768
+
769
+ :param version: version (required)
770
+ :type version: str
771
+ :param resource_id_or_reference: The ID or reference of the resource. (required)
772
+ :type resource_id_or_reference: str
773
+ :param x_platform_id: Platform ID.
774
+ :type x_platform_id: str
775
+ :param expand: The id fields of the resources that are going to be expanded.
776
+ :type expand: List[str]
777
+ :param _request_timeout: timeout setting for this request. If one
778
+ number provided, it will be total request
779
+ timeout. It can also be a pair (tuple) of
780
+ (connection, read) timeouts.
781
+ :type _request_timeout: int, tuple(int, int), optional
782
+ :param _request_auth: set to override the auth_settings for an a single
783
+ request; this effectively ignores the
784
+ authentication in the spec for a single request.
785
+ :type _request_auth: dict, optional
786
+ :param _content_type: force content-type for the request.
787
+ :type _content_type: str, Optional
788
+ :param _headers: set to override the headers for a single
789
+ request; this effectively ignores the headers
790
+ in the spec for a single request.
791
+ :type _headers: dict, optional
792
+ :param _host_index: set to override the host_index for a single
793
+ request; this effectively ignores the host_index
794
+ in the spec for a single request.
795
+ :type _host_index: int, optional
796
+ :return: Returns the result object.
797
+ """ # noqa: E501
798
+
799
+ _param = self._get_products_by_resource_id_or_reference_serialize(
800
+ version=version,
801
+ resource_id_or_reference=resource_id_or_reference,
802
+ x_platform_id=x_platform_id,
803
+ expand=expand,
804
+ _request_auth=_request_auth,
805
+ _content_type=_content_type,
806
+ _headers=_headers,
807
+ _host_index=_host_index
808
+ )
809
+
810
+ _response_types_map: Dict[str, Optional[str]] = {
811
+ '200': "Product",
812
+ '400': "ApiError",
813
+ '401': "ApiError",
814
+ '403': "ApiError",
815
+ '500': "ApiError",
816
+ }
817
+ response_data = self.api_client.call_api(
818
+ *_param,
819
+ _request_timeout=_request_timeout
820
+ )
821
+ response_data.read()
822
+ return self.api_client.response_deserialize(
823
+ response_data=response_data,
824
+ response_types_map=_response_types_map,
825
+ ).data
826
+
827
+
828
+ @validate_call
829
+ def get_products_by_resource_id_or_reference_with_http_info(
830
+ self,
831
+ version: Annotated[StrictStr, Field(description="version")],
832
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID or reference of the resource.")],
833
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
834
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
835
+ _request_timeout: Union[
836
+ None,
837
+ Annotated[StrictFloat, Field(gt=0)],
838
+ Tuple[
839
+ Annotated[StrictFloat, Field(gt=0)],
840
+ Annotated[StrictFloat, Field(gt=0)]
841
+ ]
842
+ ] = None,
843
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
844
+ _content_type: Optional[StrictStr] = None,
845
+ _headers: Optional[Dict[StrictStr, Any]] = None,
846
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
847
+ ) -> ApiResponse[Product]:
848
+ """Get a product
849
+
850
+ Requires the PRODUCT.VIEW permission.
851
+
852
+ :param version: version (required)
853
+ :type version: str
854
+ :param resource_id_or_reference: The ID or reference of the resource. (required)
855
+ :type resource_id_or_reference: str
856
+ :param x_platform_id: Platform ID.
857
+ :type x_platform_id: str
858
+ :param expand: The id fields of the resources that are going to be expanded.
859
+ :type expand: List[str]
860
+ :param _request_timeout: timeout setting for this request. If one
861
+ number provided, it will be total request
862
+ timeout. It can also be a pair (tuple) of
863
+ (connection, read) timeouts.
864
+ :type _request_timeout: int, tuple(int, int), optional
865
+ :param _request_auth: set to override the auth_settings for an a single
866
+ request; this effectively ignores the
867
+ authentication in the spec for a single request.
868
+ :type _request_auth: dict, optional
869
+ :param _content_type: force content-type for the request.
870
+ :type _content_type: str, Optional
871
+ :param _headers: set to override the headers for a single
872
+ request; this effectively ignores the headers
873
+ in the spec for a single request.
874
+ :type _headers: dict, optional
875
+ :param _host_index: set to override the host_index for a single
876
+ request; this effectively ignores the host_index
877
+ in the spec for a single request.
878
+ :type _host_index: int, optional
879
+ :return: Returns the result object.
880
+ """ # noqa: E501
881
+
882
+ _param = self._get_products_by_resource_id_or_reference_serialize(
883
+ version=version,
884
+ resource_id_or_reference=resource_id_or_reference,
885
+ x_platform_id=x_platform_id,
886
+ expand=expand,
887
+ _request_auth=_request_auth,
888
+ _content_type=_content_type,
889
+ _headers=_headers,
890
+ _host_index=_host_index
891
+ )
892
+
893
+ _response_types_map: Dict[str, Optional[str]] = {
894
+ '200': "Product",
895
+ '400': "ApiError",
896
+ '401': "ApiError",
897
+ '403': "ApiError",
898
+ '500': "ApiError",
899
+ }
900
+ response_data = self.api_client.call_api(
901
+ *_param,
902
+ _request_timeout=_request_timeout
903
+ )
904
+ response_data.read()
905
+ return self.api_client.response_deserialize(
906
+ response_data=response_data,
907
+ response_types_map=_response_types_map,
908
+ )
909
+
910
+
911
+ @validate_call
912
+ def get_products_by_resource_id_or_reference_without_preload_content(
913
+ self,
914
+ version: Annotated[StrictStr, Field(description="version")],
915
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID or reference of the resource.")],
916
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
917
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
918
+ _request_timeout: Union[
919
+ None,
920
+ Annotated[StrictFloat, Field(gt=0)],
921
+ Tuple[
922
+ Annotated[StrictFloat, Field(gt=0)],
923
+ Annotated[StrictFloat, Field(gt=0)]
924
+ ]
925
+ ] = None,
926
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
927
+ _content_type: Optional[StrictStr] = None,
928
+ _headers: Optional[Dict[StrictStr, Any]] = None,
929
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
930
+ ) -> RESTResponseType:
931
+ """Get a product
932
+
933
+ Requires the PRODUCT.VIEW permission.
934
+
935
+ :param version: version (required)
936
+ :type version: str
937
+ :param resource_id_or_reference: The ID or reference of the resource. (required)
938
+ :type resource_id_or_reference: str
939
+ :param x_platform_id: Platform ID.
940
+ :type x_platform_id: str
941
+ :param expand: The id fields of the resources that are going to be expanded.
942
+ :type expand: List[str]
943
+ :param _request_timeout: timeout setting for this request. If one
944
+ number provided, it will be total request
945
+ timeout. It can also be a pair (tuple) of
946
+ (connection, read) timeouts.
947
+ :type _request_timeout: int, tuple(int, int), optional
948
+ :param _request_auth: set to override the auth_settings for an a single
949
+ request; this effectively ignores the
950
+ authentication in the spec for a single request.
951
+ :type _request_auth: dict, optional
952
+ :param _content_type: force content-type for the request.
953
+ :type _content_type: str, Optional
954
+ :param _headers: set to override the headers for a single
955
+ request; this effectively ignores the headers
956
+ in the spec for a single request.
957
+ :type _headers: dict, optional
958
+ :param _host_index: set to override the host_index for a single
959
+ request; this effectively ignores the host_index
960
+ in the spec for a single request.
961
+ :type _host_index: int, optional
962
+ :return: Returns the result object.
963
+ """ # noqa: E501
964
+
965
+ _param = self._get_products_by_resource_id_or_reference_serialize(
966
+ version=version,
967
+ resource_id_or_reference=resource_id_or_reference,
968
+ x_platform_id=x_platform_id,
969
+ expand=expand,
970
+ _request_auth=_request_auth,
971
+ _content_type=_content_type,
972
+ _headers=_headers,
973
+ _host_index=_host_index
974
+ )
975
+
976
+ _response_types_map: Dict[str, Optional[str]] = {
977
+ '200': "Product",
978
+ '400': "ApiError",
979
+ '401': "ApiError",
980
+ '403': "ApiError",
981
+ '500': "ApiError",
982
+ }
983
+ response_data = self.api_client.call_api(
984
+ *_param,
985
+ _request_timeout=_request_timeout
986
+ )
987
+ return response_data.response
988
+
989
+
990
+ def _get_products_by_resource_id_or_reference_serialize(
991
+ self,
992
+ version,
993
+ resource_id_or_reference,
994
+ x_platform_id,
995
+ expand,
996
+ _request_auth,
997
+ _content_type,
998
+ _headers,
999
+ _host_index,
1000
+ ) -> RequestSerialized:
1001
+
1002
+ _host = None
1003
+
1004
+ _collection_formats: Dict[str, str] = {
1005
+ 'expand[]': 'multi',
1006
+ }
1007
+
1008
+ _path_params: Dict[str, str] = {}
1009
+ _query_params: List[Tuple[str, str]] = []
1010
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1011
+ _form_params: List[Tuple[str, str]] = []
1012
+ _files: Dict[
1013
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1014
+ ] = {}
1015
+ _body_params: Optional[bytes] = None
1016
+
1017
+ # process the path parameters
1018
+ if version is not None:
1019
+ _path_params['version'] = version
1020
+ if resource_id_or_reference is not None:
1021
+ _path_params['resourceIdOrReference'] = resource_id_or_reference
1022
+ # process the query parameters
1023
+ if expand is not None:
1024
+
1025
+ _query_params.append(('expand[]', expand))
1026
+
1027
+ # process the header parameters
1028
+ if x_platform_id is not None:
1029
+ _header_params['x-platform-id'] = x_platform_id
1030
+ # process the form parameters
1031
+ # process the body parameter
1032
+
1033
+
1034
+ # set the HTTP header `Accept`
1035
+ if 'Accept' not in _header_params:
1036
+ _header_params['Accept'] = self.api_client.select_header_accept(
1037
+ [
1038
+ 'application/json',
1039
+ '*/*'
1040
+ ]
1041
+ )
1042
+
1043
+
1044
+ # authentication setting
1045
+ _auth_settings: List[str] = [
1046
+ 'JWT-Authentication',
1047
+ 'API-Key'
1048
+ ]
1049
+
1050
+ return self.api_client.param_serialize(
1051
+ method='GET',
1052
+ resource_path='/v{version}/products/{resourceIdOrReference}',
1053
+ path_params=_path_params,
1054
+ query_params=_query_params,
1055
+ header_params=_header_params,
1056
+ body=_body_params,
1057
+ post_params=_form_params,
1058
+ files=_files,
1059
+ auth_settings=_auth_settings,
1060
+ collection_formats=_collection_formats,
1061
+ _host=_host,
1062
+ _request_auth=_request_auth
1063
+ )
1064
+
1065
+
1066
+
1067
+
1068
+ @validate_call
1069
+ def post_products(
1070
+ self,
1071
+ version: Annotated[StrictStr, Field(description="version")],
1072
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1073
+ product_create_request: Optional[ProductCreateRequest] = None,
1074
+ _request_timeout: Union[
1075
+ None,
1076
+ Annotated[StrictFloat, Field(gt=0)],
1077
+ Tuple[
1078
+ Annotated[StrictFloat, Field(gt=0)],
1079
+ Annotated[StrictFloat, Field(gt=0)]
1080
+ ]
1081
+ ] = None,
1082
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1083
+ _content_type: Optional[StrictStr] = None,
1084
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1085
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1086
+ ) -> Product:
1087
+ """Create a product
1088
+
1089
+ Requires the PRODUCT.CREATE permission.
1090
+
1091
+ :param version: version (required)
1092
+ :type version: str
1093
+ :param x_platform_id: Platform ID.
1094
+ :type x_platform_id: str
1095
+ :param product_create_request:
1096
+ :type product_create_request: ProductCreateRequest
1097
+ :param _request_timeout: timeout setting for this request. If one
1098
+ number provided, it will be total request
1099
+ timeout. It can also be a pair (tuple) of
1100
+ (connection, read) timeouts.
1101
+ :type _request_timeout: int, tuple(int, int), optional
1102
+ :param _request_auth: set to override the auth_settings for an a single
1103
+ request; this effectively ignores the
1104
+ authentication in the spec for a single request.
1105
+ :type _request_auth: dict, optional
1106
+ :param _content_type: force content-type for the request.
1107
+ :type _content_type: str, Optional
1108
+ :param _headers: set to override the headers for a single
1109
+ request; this effectively ignores the headers
1110
+ in the spec for a single request.
1111
+ :type _headers: dict, optional
1112
+ :param _host_index: set to override the host_index for a single
1113
+ request; this effectively ignores the host_index
1114
+ in the spec for a single request.
1115
+ :type _host_index: int, optional
1116
+ :return: Returns the result object.
1117
+ """ # noqa: E501
1118
+
1119
+ _param = self._post_products_serialize(
1120
+ version=version,
1121
+ x_platform_id=x_platform_id,
1122
+ product_create_request=product_create_request,
1123
+ _request_auth=_request_auth,
1124
+ _content_type=_content_type,
1125
+ _headers=_headers,
1126
+ _host_index=_host_index
1127
+ )
1128
+
1129
+ _response_types_map: Dict[str, Optional[str]] = {
1130
+ '201': "Product",
1131
+ '400': "ApiError",
1132
+ '401': "ApiError",
1133
+ '403': "ApiError",
1134
+ '409': "ApiError",
1135
+ '500': "ApiError",
1136
+ }
1137
+ response_data = self.api_client.call_api(
1138
+ *_param,
1139
+ _request_timeout=_request_timeout
1140
+ )
1141
+ response_data.read()
1142
+ return self.api_client.response_deserialize(
1143
+ response_data=response_data,
1144
+ response_types_map=_response_types_map,
1145
+ ).data
1146
+
1147
+
1148
+ @validate_call
1149
+ def post_products_with_http_info(
1150
+ self,
1151
+ version: Annotated[StrictStr, Field(description="version")],
1152
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1153
+ product_create_request: Optional[ProductCreateRequest] = None,
1154
+ _request_timeout: Union[
1155
+ None,
1156
+ Annotated[StrictFloat, Field(gt=0)],
1157
+ Tuple[
1158
+ Annotated[StrictFloat, Field(gt=0)],
1159
+ Annotated[StrictFloat, Field(gt=0)]
1160
+ ]
1161
+ ] = None,
1162
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1163
+ _content_type: Optional[StrictStr] = None,
1164
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1165
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1166
+ ) -> ApiResponse[Product]:
1167
+ """Create a product
1168
+
1169
+ Requires the PRODUCT.CREATE permission.
1170
+
1171
+ :param version: version (required)
1172
+ :type version: str
1173
+ :param x_platform_id: Platform ID.
1174
+ :type x_platform_id: str
1175
+ :param product_create_request:
1176
+ :type product_create_request: ProductCreateRequest
1177
+ :param _request_timeout: timeout setting for this request. If one
1178
+ number provided, it will be total request
1179
+ timeout. It can also be a pair (tuple) of
1180
+ (connection, read) timeouts.
1181
+ :type _request_timeout: int, tuple(int, int), optional
1182
+ :param _request_auth: set to override the auth_settings for an a single
1183
+ request; this effectively ignores the
1184
+ authentication in the spec for a single request.
1185
+ :type _request_auth: dict, optional
1186
+ :param _content_type: force content-type for the request.
1187
+ :type _content_type: str, Optional
1188
+ :param _headers: set to override the headers for a single
1189
+ request; this effectively ignores the headers
1190
+ in the spec for a single request.
1191
+ :type _headers: dict, optional
1192
+ :param _host_index: set to override the host_index for a single
1193
+ request; this effectively ignores the host_index
1194
+ in the spec for a single request.
1195
+ :type _host_index: int, optional
1196
+ :return: Returns the result object.
1197
+ """ # noqa: E501
1198
+
1199
+ _param = self._post_products_serialize(
1200
+ version=version,
1201
+ x_platform_id=x_platform_id,
1202
+ product_create_request=product_create_request,
1203
+ _request_auth=_request_auth,
1204
+ _content_type=_content_type,
1205
+ _headers=_headers,
1206
+ _host_index=_host_index
1207
+ )
1208
+
1209
+ _response_types_map: Dict[str, Optional[str]] = {
1210
+ '201': "Product",
1211
+ '400': "ApiError",
1212
+ '401': "ApiError",
1213
+ '403': "ApiError",
1214
+ '409': "ApiError",
1215
+ '500': "ApiError",
1216
+ }
1217
+ response_data = self.api_client.call_api(
1218
+ *_param,
1219
+ _request_timeout=_request_timeout
1220
+ )
1221
+ response_data.read()
1222
+ return self.api_client.response_deserialize(
1223
+ response_data=response_data,
1224
+ response_types_map=_response_types_map,
1225
+ )
1226
+
1227
+
1228
+ @validate_call
1229
+ def post_products_without_preload_content(
1230
+ self,
1231
+ version: Annotated[StrictStr, Field(description="version")],
1232
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1233
+ product_create_request: Optional[ProductCreateRequest] = None,
1234
+ _request_timeout: Union[
1235
+ None,
1236
+ Annotated[StrictFloat, Field(gt=0)],
1237
+ Tuple[
1238
+ Annotated[StrictFloat, Field(gt=0)],
1239
+ Annotated[StrictFloat, Field(gt=0)]
1240
+ ]
1241
+ ] = None,
1242
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1243
+ _content_type: Optional[StrictStr] = None,
1244
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1245
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1246
+ ) -> RESTResponseType:
1247
+ """Create a product
1248
+
1249
+ Requires the PRODUCT.CREATE permission.
1250
+
1251
+ :param version: version (required)
1252
+ :type version: str
1253
+ :param x_platform_id: Platform ID.
1254
+ :type x_platform_id: str
1255
+ :param product_create_request:
1256
+ :type product_create_request: ProductCreateRequest
1257
+ :param _request_timeout: timeout setting for this request. If one
1258
+ number provided, it will be total request
1259
+ timeout. It can also be a pair (tuple) of
1260
+ (connection, read) timeouts.
1261
+ :type _request_timeout: int, tuple(int, int), optional
1262
+ :param _request_auth: set to override the auth_settings for an a single
1263
+ request; this effectively ignores the
1264
+ authentication in the spec for a single request.
1265
+ :type _request_auth: dict, optional
1266
+ :param _content_type: force content-type for the request.
1267
+ :type _content_type: str, Optional
1268
+ :param _headers: set to override the headers for a single
1269
+ request; this effectively ignores the headers
1270
+ in the spec for a single request.
1271
+ :type _headers: dict, optional
1272
+ :param _host_index: set to override the host_index for a single
1273
+ request; this effectively ignores the host_index
1274
+ in the spec for a single request.
1275
+ :type _host_index: int, optional
1276
+ :return: Returns the result object.
1277
+ """ # noqa: E501
1278
+
1279
+ _param = self._post_products_serialize(
1280
+ version=version,
1281
+ x_platform_id=x_platform_id,
1282
+ product_create_request=product_create_request,
1283
+ _request_auth=_request_auth,
1284
+ _content_type=_content_type,
1285
+ _headers=_headers,
1286
+ _host_index=_host_index
1287
+ )
1288
+
1289
+ _response_types_map: Dict[str, Optional[str]] = {
1290
+ '201': "Product",
1291
+ '400': "ApiError",
1292
+ '401': "ApiError",
1293
+ '403': "ApiError",
1294
+ '409': "ApiError",
1295
+ '500': "ApiError",
1296
+ }
1297
+ response_data = self.api_client.call_api(
1298
+ *_param,
1299
+ _request_timeout=_request_timeout
1300
+ )
1301
+ return response_data.response
1302
+
1303
+
1304
+ def _post_products_serialize(
1305
+ self,
1306
+ version,
1307
+ x_platform_id,
1308
+ product_create_request,
1309
+ _request_auth,
1310
+ _content_type,
1311
+ _headers,
1312
+ _host_index,
1313
+ ) -> RequestSerialized:
1314
+
1315
+ _host = None
1316
+
1317
+ _collection_formats: Dict[str, str] = {
1318
+ }
1319
+
1320
+ _path_params: Dict[str, str] = {}
1321
+ _query_params: List[Tuple[str, str]] = []
1322
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1323
+ _form_params: List[Tuple[str, str]] = []
1324
+ _files: Dict[
1325
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1326
+ ] = {}
1327
+ _body_params: Optional[bytes] = None
1328
+
1329
+ # process the path parameters
1330
+ if version is not None:
1331
+ _path_params['version'] = version
1332
+ # process the query parameters
1333
+ # process the header parameters
1334
+ if x_platform_id is not None:
1335
+ _header_params['x-platform-id'] = x_platform_id
1336
+ # process the form parameters
1337
+ # process the body parameter
1338
+ if product_create_request is not None:
1339
+ _body_params = product_create_request
1340
+
1341
+
1342
+ # set the HTTP header `Accept`
1343
+ if 'Accept' not in _header_params:
1344
+ _header_params['Accept'] = self.api_client.select_header_accept(
1345
+ [
1346
+ 'application/json',
1347
+ '*/*'
1348
+ ]
1349
+ )
1350
+
1351
+ # set the HTTP header `Content-Type`
1352
+ if _content_type:
1353
+ _header_params['Content-Type'] = _content_type
1354
+ else:
1355
+ _default_content_type = (
1356
+ self.api_client.select_header_content_type(
1357
+ [
1358
+ 'application/json'
1359
+ ]
1360
+ )
1361
+ )
1362
+ if _default_content_type is not None:
1363
+ _header_params['Content-Type'] = _default_content_type
1364
+
1365
+ # authentication setting
1366
+ _auth_settings: List[str] = [
1367
+ 'JWT-Authentication',
1368
+ 'API-Key'
1369
+ ]
1370
+
1371
+ return self.api_client.param_serialize(
1372
+ method='POST',
1373
+ resource_path='/v{version}/products',
1374
+ path_params=_path_params,
1375
+ query_params=_query_params,
1376
+ header_params=_header_params,
1377
+ body=_body_params,
1378
+ post_params=_form_params,
1379
+ files=_files,
1380
+ auth_settings=_auth_settings,
1381
+ collection_formats=_collection_formats,
1382
+ _host=_host,
1383
+ _request_auth=_request_auth
1384
+ )
1385
+
1386
+
1387
+
1388
+
1389
+ @validate_call
1390
+ def post_products_by_resource_id_or_reference_activate(
1391
+ self,
1392
+ version: Annotated[StrictStr, Field(description="version")],
1393
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
1394
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1395
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
1396
+ _request_timeout: Union[
1397
+ None,
1398
+ Annotated[StrictFloat, Field(gt=0)],
1399
+ Tuple[
1400
+ Annotated[StrictFloat, Field(gt=0)],
1401
+ Annotated[StrictFloat, Field(gt=0)]
1402
+ ]
1403
+ ] = None,
1404
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1405
+ _content_type: Optional[StrictStr] = None,
1406
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1407
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1408
+ ) -> Product:
1409
+ """Activate a product
1410
+
1411
+ Requires the PRODUCT.STATUS.UPDATE permission.
1412
+
1413
+ :param version: version (required)
1414
+ :type version: str
1415
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
1416
+ :type resource_id_or_reference: str
1417
+ :param x_platform_id: Platform ID.
1418
+ :type x_platform_id: str
1419
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
1420
+ :type align_product_item_status: bool
1421
+ :param _request_timeout: timeout setting for this request. If one
1422
+ number provided, it will be total request
1423
+ timeout. It can also be a pair (tuple) of
1424
+ (connection, read) timeouts.
1425
+ :type _request_timeout: int, tuple(int, int), optional
1426
+ :param _request_auth: set to override the auth_settings for an a single
1427
+ request; this effectively ignores the
1428
+ authentication in the spec for a single request.
1429
+ :type _request_auth: dict, optional
1430
+ :param _content_type: force content-type for the request.
1431
+ :type _content_type: str, Optional
1432
+ :param _headers: set to override the headers for a single
1433
+ request; this effectively ignores the headers
1434
+ in the spec for a single request.
1435
+ :type _headers: dict, optional
1436
+ :param _host_index: set to override the host_index for a single
1437
+ request; this effectively ignores the host_index
1438
+ in the spec for a single request.
1439
+ :type _host_index: int, optional
1440
+ :return: Returns the result object.
1441
+ """ # noqa: E501
1442
+
1443
+ _param = self._post_products_by_resource_id_or_reference_activate_serialize(
1444
+ version=version,
1445
+ resource_id_or_reference=resource_id_or_reference,
1446
+ x_platform_id=x_platform_id,
1447
+ align_product_item_status=align_product_item_status,
1448
+ _request_auth=_request_auth,
1449
+ _content_type=_content_type,
1450
+ _headers=_headers,
1451
+ _host_index=_host_index
1452
+ )
1453
+
1454
+ _response_types_map: Dict[str, Optional[str]] = {
1455
+ '200': "Product",
1456
+ '400': "ApiError",
1457
+ '401': "ApiError",
1458
+ '403': "ApiError",
1459
+ '500': "ApiError",
1460
+ }
1461
+ response_data = self.api_client.call_api(
1462
+ *_param,
1463
+ _request_timeout=_request_timeout
1464
+ )
1465
+ response_data.read()
1466
+ return self.api_client.response_deserialize(
1467
+ response_data=response_data,
1468
+ response_types_map=_response_types_map,
1469
+ ).data
1470
+
1471
+
1472
+ @validate_call
1473
+ def post_products_by_resource_id_or_reference_activate_with_http_info(
1474
+ self,
1475
+ version: Annotated[StrictStr, Field(description="version")],
1476
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
1477
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1478
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
1479
+ _request_timeout: Union[
1480
+ None,
1481
+ Annotated[StrictFloat, Field(gt=0)],
1482
+ Tuple[
1483
+ Annotated[StrictFloat, Field(gt=0)],
1484
+ Annotated[StrictFloat, Field(gt=0)]
1485
+ ]
1486
+ ] = None,
1487
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1488
+ _content_type: Optional[StrictStr] = None,
1489
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1490
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1491
+ ) -> ApiResponse[Product]:
1492
+ """Activate a product
1493
+
1494
+ Requires the PRODUCT.STATUS.UPDATE permission.
1495
+
1496
+ :param version: version (required)
1497
+ :type version: str
1498
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
1499
+ :type resource_id_or_reference: str
1500
+ :param x_platform_id: Platform ID.
1501
+ :type x_platform_id: str
1502
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
1503
+ :type align_product_item_status: bool
1504
+ :param _request_timeout: timeout setting for this request. If one
1505
+ number provided, it will be total request
1506
+ timeout. It can also be a pair (tuple) of
1507
+ (connection, read) timeouts.
1508
+ :type _request_timeout: int, tuple(int, int), optional
1509
+ :param _request_auth: set to override the auth_settings for an a single
1510
+ request; this effectively ignores the
1511
+ authentication in the spec for a single request.
1512
+ :type _request_auth: dict, optional
1513
+ :param _content_type: force content-type for the request.
1514
+ :type _content_type: str, Optional
1515
+ :param _headers: set to override the headers for a single
1516
+ request; this effectively ignores the headers
1517
+ in the spec for a single request.
1518
+ :type _headers: dict, optional
1519
+ :param _host_index: set to override the host_index for a single
1520
+ request; this effectively ignores the host_index
1521
+ in the spec for a single request.
1522
+ :type _host_index: int, optional
1523
+ :return: Returns the result object.
1524
+ """ # noqa: E501
1525
+
1526
+ _param = self._post_products_by_resource_id_or_reference_activate_serialize(
1527
+ version=version,
1528
+ resource_id_or_reference=resource_id_or_reference,
1529
+ x_platform_id=x_platform_id,
1530
+ align_product_item_status=align_product_item_status,
1531
+ _request_auth=_request_auth,
1532
+ _content_type=_content_type,
1533
+ _headers=_headers,
1534
+ _host_index=_host_index
1535
+ )
1536
+
1537
+ _response_types_map: Dict[str, Optional[str]] = {
1538
+ '200': "Product",
1539
+ '400': "ApiError",
1540
+ '401': "ApiError",
1541
+ '403': "ApiError",
1542
+ '500': "ApiError",
1543
+ }
1544
+ response_data = self.api_client.call_api(
1545
+ *_param,
1546
+ _request_timeout=_request_timeout
1547
+ )
1548
+ response_data.read()
1549
+ return self.api_client.response_deserialize(
1550
+ response_data=response_data,
1551
+ response_types_map=_response_types_map,
1552
+ )
1553
+
1554
+
1555
+ @validate_call
1556
+ def post_products_by_resource_id_or_reference_activate_without_preload_content(
1557
+ self,
1558
+ version: Annotated[StrictStr, Field(description="version")],
1559
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
1560
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1561
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
1562
+ _request_timeout: Union[
1563
+ None,
1564
+ Annotated[StrictFloat, Field(gt=0)],
1565
+ Tuple[
1566
+ Annotated[StrictFloat, Field(gt=0)],
1567
+ Annotated[StrictFloat, Field(gt=0)]
1568
+ ]
1569
+ ] = None,
1570
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1571
+ _content_type: Optional[StrictStr] = None,
1572
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1573
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1574
+ ) -> RESTResponseType:
1575
+ """Activate a product
1576
+
1577
+ Requires the PRODUCT.STATUS.UPDATE permission.
1578
+
1579
+ :param version: version (required)
1580
+ :type version: str
1581
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
1582
+ :type resource_id_or_reference: str
1583
+ :param x_platform_id: Platform ID.
1584
+ :type x_platform_id: str
1585
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
1586
+ :type align_product_item_status: bool
1587
+ :param _request_timeout: timeout setting for this request. If one
1588
+ number provided, it will be total request
1589
+ timeout. It can also be a pair (tuple) of
1590
+ (connection, read) timeouts.
1591
+ :type _request_timeout: int, tuple(int, int), optional
1592
+ :param _request_auth: set to override the auth_settings for an a single
1593
+ request; this effectively ignores the
1594
+ authentication in the spec for a single request.
1595
+ :type _request_auth: dict, optional
1596
+ :param _content_type: force content-type for the request.
1597
+ :type _content_type: str, Optional
1598
+ :param _headers: set to override the headers for a single
1599
+ request; this effectively ignores the headers
1600
+ in the spec for a single request.
1601
+ :type _headers: dict, optional
1602
+ :param _host_index: set to override the host_index for a single
1603
+ request; this effectively ignores the host_index
1604
+ in the spec for a single request.
1605
+ :type _host_index: int, optional
1606
+ :return: Returns the result object.
1607
+ """ # noqa: E501
1608
+
1609
+ _param = self._post_products_by_resource_id_or_reference_activate_serialize(
1610
+ version=version,
1611
+ resource_id_or_reference=resource_id_or_reference,
1612
+ x_platform_id=x_platform_id,
1613
+ align_product_item_status=align_product_item_status,
1614
+ _request_auth=_request_auth,
1615
+ _content_type=_content_type,
1616
+ _headers=_headers,
1617
+ _host_index=_host_index
1618
+ )
1619
+
1620
+ _response_types_map: Dict[str, Optional[str]] = {
1621
+ '200': "Product",
1622
+ '400': "ApiError",
1623
+ '401': "ApiError",
1624
+ '403': "ApiError",
1625
+ '500': "ApiError",
1626
+ }
1627
+ response_data = self.api_client.call_api(
1628
+ *_param,
1629
+ _request_timeout=_request_timeout
1630
+ )
1631
+ return response_data.response
1632
+
1633
+
1634
+ def _post_products_by_resource_id_or_reference_activate_serialize(
1635
+ self,
1636
+ version,
1637
+ resource_id_or_reference,
1638
+ x_platform_id,
1639
+ align_product_item_status,
1640
+ _request_auth,
1641
+ _content_type,
1642
+ _headers,
1643
+ _host_index,
1644
+ ) -> RequestSerialized:
1645
+
1646
+ _host = None
1647
+
1648
+ _collection_formats: Dict[str, str] = {
1649
+ }
1650
+
1651
+ _path_params: Dict[str, str] = {}
1652
+ _query_params: List[Tuple[str, str]] = []
1653
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1654
+ _form_params: List[Tuple[str, str]] = []
1655
+ _files: Dict[
1656
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1657
+ ] = {}
1658
+ _body_params: Optional[bytes] = None
1659
+
1660
+ # process the path parameters
1661
+ if version is not None:
1662
+ _path_params['version'] = version
1663
+ if resource_id_or_reference is not None:
1664
+ _path_params['resourceIdOrReference'] = resource_id_or_reference
1665
+ # process the query parameters
1666
+ if align_product_item_status is not None:
1667
+
1668
+ _query_params.append(('align_product_item_status', align_product_item_status))
1669
+
1670
+ # process the header parameters
1671
+ if x_platform_id is not None:
1672
+ _header_params['x-platform-id'] = x_platform_id
1673
+ # process the form parameters
1674
+ # process the body parameter
1675
+
1676
+
1677
+ # set the HTTP header `Accept`
1678
+ if 'Accept' not in _header_params:
1679
+ _header_params['Accept'] = self.api_client.select_header_accept(
1680
+ [
1681
+ 'application/json',
1682
+ '*/*'
1683
+ ]
1684
+ )
1685
+
1686
+
1687
+ # authentication setting
1688
+ _auth_settings: List[str] = [
1689
+ 'JWT-Authentication',
1690
+ 'API-Key'
1691
+ ]
1692
+
1693
+ return self.api_client.param_serialize(
1694
+ method='POST',
1695
+ resource_path='/v{version}/products/{resourceIdOrReference}/activate',
1696
+ path_params=_path_params,
1697
+ query_params=_query_params,
1698
+ header_params=_header_params,
1699
+ body=_body_params,
1700
+ post_params=_form_params,
1701
+ files=_files,
1702
+ auth_settings=_auth_settings,
1703
+ collection_formats=_collection_formats,
1704
+ _host=_host,
1705
+ _request_auth=_request_auth
1706
+ )
1707
+
1708
+
1709
+
1710
+
1711
+ @validate_call
1712
+ def post_products_by_resource_id_or_reference_archive(
1713
+ self,
1714
+ version: Annotated[StrictStr, Field(description="version")],
1715
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
1716
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1717
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
1718
+ _request_timeout: Union[
1719
+ None,
1720
+ Annotated[StrictFloat, Field(gt=0)],
1721
+ Tuple[
1722
+ Annotated[StrictFloat, Field(gt=0)],
1723
+ Annotated[StrictFloat, Field(gt=0)]
1724
+ ]
1725
+ ] = None,
1726
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1727
+ _content_type: Optional[StrictStr] = None,
1728
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1729
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1730
+ ) -> Product:
1731
+ """Archive a product
1732
+
1733
+ Requires the PRODUCT.STATUS.UPDATE permission.
1734
+
1735
+ :param version: version (required)
1736
+ :type version: str
1737
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
1738
+ :type resource_id_or_reference: str
1739
+ :param x_platform_id: Platform ID.
1740
+ :type x_platform_id: str
1741
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
1742
+ :type align_product_item_status: bool
1743
+ :param _request_timeout: timeout setting for this request. If one
1744
+ number provided, it will be total request
1745
+ timeout. It can also be a pair (tuple) of
1746
+ (connection, read) timeouts.
1747
+ :type _request_timeout: int, tuple(int, int), optional
1748
+ :param _request_auth: set to override the auth_settings for an a single
1749
+ request; this effectively ignores the
1750
+ authentication in the spec for a single request.
1751
+ :type _request_auth: dict, optional
1752
+ :param _content_type: force content-type for the request.
1753
+ :type _content_type: str, Optional
1754
+ :param _headers: set to override the headers for a single
1755
+ request; this effectively ignores the headers
1756
+ in the spec for a single request.
1757
+ :type _headers: dict, optional
1758
+ :param _host_index: set to override the host_index for a single
1759
+ request; this effectively ignores the host_index
1760
+ in the spec for a single request.
1761
+ :type _host_index: int, optional
1762
+ :return: Returns the result object.
1763
+ """ # noqa: E501
1764
+
1765
+ _param = self._post_products_by_resource_id_or_reference_archive_serialize(
1766
+ version=version,
1767
+ resource_id_or_reference=resource_id_or_reference,
1768
+ x_platform_id=x_platform_id,
1769
+ align_product_item_status=align_product_item_status,
1770
+ _request_auth=_request_auth,
1771
+ _content_type=_content_type,
1772
+ _headers=_headers,
1773
+ _host_index=_host_index
1774
+ )
1775
+
1776
+ _response_types_map: Dict[str, Optional[str]] = {
1777
+ '200': "Product",
1778
+ '400': "ApiError",
1779
+ '401': "ApiError",
1780
+ '403': "ApiError",
1781
+ '500': "ApiError",
1782
+ }
1783
+ response_data = self.api_client.call_api(
1784
+ *_param,
1785
+ _request_timeout=_request_timeout
1786
+ )
1787
+ response_data.read()
1788
+ return self.api_client.response_deserialize(
1789
+ response_data=response_data,
1790
+ response_types_map=_response_types_map,
1791
+ ).data
1792
+
1793
+
1794
+ @validate_call
1795
+ def post_products_by_resource_id_or_reference_archive_with_http_info(
1796
+ self,
1797
+ version: Annotated[StrictStr, Field(description="version")],
1798
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
1799
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1800
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
1801
+ _request_timeout: Union[
1802
+ None,
1803
+ Annotated[StrictFloat, Field(gt=0)],
1804
+ Tuple[
1805
+ Annotated[StrictFloat, Field(gt=0)],
1806
+ Annotated[StrictFloat, Field(gt=0)]
1807
+ ]
1808
+ ] = None,
1809
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1810
+ _content_type: Optional[StrictStr] = None,
1811
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1812
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1813
+ ) -> ApiResponse[Product]:
1814
+ """Archive a product
1815
+
1816
+ Requires the PRODUCT.STATUS.UPDATE permission.
1817
+
1818
+ :param version: version (required)
1819
+ :type version: str
1820
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
1821
+ :type resource_id_or_reference: str
1822
+ :param x_platform_id: Platform ID.
1823
+ :type x_platform_id: str
1824
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
1825
+ :type align_product_item_status: bool
1826
+ :param _request_timeout: timeout setting for this request. If one
1827
+ number provided, it will be total request
1828
+ timeout. It can also be a pair (tuple) of
1829
+ (connection, read) timeouts.
1830
+ :type _request_timeout: int, tuple(int, int), optional
1831
+ :param _request_auth: set to override the auth_settings for an a single
1832
+ request; this effectively ignores the
1833
+ authentication in the spec for a single request.
1834
+ :type _request_auth: dict, optional
1835
+ :param _content_type: force content-type for the request.
1836
+ :type _content_type: str, Optional
1837
+ :param _headers: set to override the headers for a single
1838
+ request; this effectively ignores the headers
1839
+ in the spec for a single request.
1840
+ :type _headers: dict, optional
1841
+ :param _host_index: set to override the host_index for a single
1842
+ request; this effectively ignores the host_index
1843
+ in the spec for a single request.
1844
+ :type _host_index: int, optional
1845
+ :return: Returns the result object.
1846
+ """ # noqa: E501
1847
+
1848
+ _param = self._post_products_by_resource_id_or_reference_archive_serialize(
1849
+ version=version,
1850
+ resource_id_or_reference=resource_id_or_reference,
1851
+ x_platform_id=x_platform_id,
1852
+ align_product_item_status=align_product_item_status,
1853
+ _request_auth=_request_auth,
1854
+ _content_type=_content_type,
1855
+ _headers=_headers,
1856
+ _host_index=_host_index
1857
+ )
1858
+
1859
+ _response_types_map: Dict[str, Optional[str]] = {
1860
+ '200': "Product",
1861
+ '400': "ApiError",
1862
+ '401': "ApiError",
1863
+ '403': "ApiError",
1864
+ '500': "ApiError",
1865
+ }
1866
+ response_data = self.api_client.call_api(
1867
+ *_param,
1868
+ _request_timeout=_request_timeout
1869
+ )
1870
+ response_data.read()
1871
+ return self.api_client.response_deserialize(
1872
+ response_data=response_data,
1873
+ response_types_map=_response_types_map,
1874
+ )
1875
+
1876
+
1877
+ @validate_call
1878
+ def post_products_by_resource_id_or_reference_archive_without_preload_content(
1879
+ self,
1880
+ version: Annotated[StrictStr, Field(description="version")],
1881
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
1882
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
1883
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
1884
+ _request_timeout: Union[
1885
+ None,
1886
+ Annotated[StrictFloat, Field(gt=0)],
1887
+ Tuple[
1888
+ Annotated[StrictFloat, Field(gt=0)],
1889
+ Annotated[StrictFloat, Field(gt=0)]
1890
+ ]
1891
+ ] = None,
1892
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1893
+ _content_type: Optional[StrictStr] = None,
1894
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1895
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1896
+ ) -> RESTResponseType:
1897
+ """Archive a product
1898
+
1899
+ Requires the PRODUCT.STATUS.UPDATE permission.
1900
+
1901
+ :param version: version (required)
1902
+ :type version: str
1903
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
1904
+ :type resource_id_or_reference: str
1905
+ :param x_platform_id: Platform ID.
1906
+ :type x_platform_id: str
1907
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
1908
+ :type align_product_item_status: bool
1909
+ :param _request_timeout: timeout setting for this request. If one
1910
+ number provided, it will be total request
1911
+ timeout. It can also be a pair (tuple) of
1912
+ (connection, read) timeouts.
1913
+ :type _request_timeout: int, tuple(int, int), optional
1914
+ :param _request_auth: set to override the auth_settings for an a single
1915
+ request; this effectively ignores the
1916
+ authentication in the spec for a single request.
1917
+ :type _request_auth: dict, optional
1918
+ :param _content_type: force content-type for the request.
1919
+ :type _content_type: str, Optional
1920
+ :param _headers: set to override the headers for a single
1921
+ request; this effectively ignores the headers
1922
+ in the spec for a single request.
1923
+ :type _headers: dict, optional
1924
+ :param _host_index: set to override the host_index for a single
1925
+ request; this effectively ignores the host_index
1926
+ in the spec for a single request.
1927
+ :type _host_index: int, optional
1928
+ :return: Returns the result object.
1929
+ """ # noqa: E501
1930
+
1931
+ _param = self._post_products_by_resource_id_or_reference_archive_serialize(
1932
+ version=version,
1933
+ resource_id_or_reference=resource_id_or_reference,
1934
+ x_platform_id=x_platform_id,
1935
+ align_product_item_status=align_product_item_status,
1936
+ _request_auth=_request_auth,
1937
+ _content_type=_content_type,
1938
+ _headers=_headers,
1939
+ _host_index=_host_index
1940
+ )
1941
+
1942
+ _response_types_map: Dict[str, Optional[str]] = {
1943
+ '200': "Product",
1944
+ '400': "ApiError",
1945
+ '401': "ApiError",
1946
+ '403': "ApiError",
1947
+ '500': "ApiError",
1948
+ }
1949
+ response_data = self.api_client.call_api(
1950
+ *_param,
1951
+ _request_timeout=_request_timeout
1952
+ )
1953
+ return response_data.response
1954
+
1955
+
1956
+ def _post_products_by_resource_id_or_reference_archive_serialize(
1957
+ self,
1958
+ version,
1959
+ resource_id_or_reference,
1960
+ x_platform_id,
1961
+ align_product_item_status,
1962
+ _request_auth,
1963
+ _content_type,
1964
+ _headers,
1965
+ _host_index,
1966
+ ) -> RequestSerialized:
1967
+
1968
+ _host = None
1969
+
1970
+ _collection_formats: Dict[str, str] = {
1971
+ }
1972
+
1973
+ _path_params: Dict[str, str] = {}
1974
+ _query_params: List[Tuple[str, str]] = []
1975
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1976
+ _form_params: List[Tuple[str, str]] = []
1977
+ _files: Dict[
1978
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1979
+ ] = {}
1980
+ _body_params: Optional[bytes] = None
1981
+
1982
+ # process the path parameters
1983
+ if version is not None:
1984
+ _path_params['version'] = version
1985
+ if resource_id_or_reference is not None:
1986
+ _path_params['resourceIdOrReference'] = resource_id_or_reference
1987
+ # process the query parameters
1988
+ if align_product_item_status is not None:
1989
+
1990
+ _query_params.append(('align_product_item_status', align_product_item_status))
1991
+
1992
+ # process the header parameters
1993
+ if x_platform_id is not None:
1994
+ _header_params['x-platform-id'] = x_platform_id
1995
+ # process the form parameters
1996
+ # process the body parameter
1997
+
1998
+
1999
+ # set the HTTP header `Accept`
2000
+ if 'Accept' not in _header_params:
2001
+ _header_params['Accept'] = self.api_client.select_header_accept(
2002
+ [
2003
+ 'application/json',
2004
+ '*/*'
2005
+ ]
2006
+ )
2007
+
2008
+
2009
+ # authentication setting
2010
+ _auth_settings: List[str] = [
2011
+ 'JWT-Authentication',
2012
+ 'API-Key'
2013
+ ]
2014
+
2015
+ return self.api_client.param_serialize(
2016
+ method='POST',
2017
+ resource_path='/v{version}/products/{resourceIdOrReference}/archive',
2018
+ path_params=_path_params,
2019
+ query_params=_query_params,
2020
+ header_params=_header_params,
2021
+ body=_body_params,
2022
+ post_params=_form_params,
2023
+ files=_files,
2024
+ auth_settings=_auth_settings,
2025
+ collection_formats=_collection_formats,
2026
+ _host=_host,
2027
+ _request_auth=_request_auth
2028
+ )
2029
+
2030
+
2031
+
2032
+
2033
+ @validate_call
2034
+ def post_products_by_resource_id_or_reference_deprecate(
2035
+ self,
2036
+ version: Annotated[StrictStr, Field(description="version")],
2037
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
2038
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2039
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
2040
+ _request_timeout: Union[
2041
+ None,
2042
+ Annotated[StrictFloat, Field(gt=0)],
2043
+ Tuple[
2044
+ Annotated[StrictFloat, Field(gt=0)],
2045
+ Annotated[StrictFloat, Field(gt=0)]
2046
+ ]
2047
+ ] = None,
2048
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2049
+ _content_type: Optional[StrictStr] = None,
2050
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2051
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2052
+ ) -> Product:
2053
+ """Deprecate a product
2054
+
2055
+ Requires the PRODUCT.STATUS.UPDATE permission.
2056
+
2057
+ :param version: version (required)
2058
+ :type version: str
2059
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
2060
+ :type resource_id_or_reference: str
2061
+ :param x_platform_id: Platform ID.
2062
+ :type x_platform_id: str
2063
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
2064
+ :type align_product_item_status: bool
2065
+ :param _request_timeout: timeout setting for this request. If one
2066
+ number provided, it will be total request
2067
+ timeout. It can also be a pair (tuple) of
2068
+ (connection, read) timeouts.
2069
+ :type _request_timeout: int, tuple(int, int), optional
2070
+ :param _request_auth: set to override the auth_settings for an a single
2071
+ request; this effectively ignores the
2072
+ authentication in the spec for a single request.
2073
+ :type _request_auth: dict, optional
2074
+ :param _content_type: force content-type for the request.
2075
+ :type _content_type: str, Optional
2076
+ :param _headers: set to override the headers for a single
2077
+ request; this effectively ignores the headers
2078
+ in the spec for a single request.
2079
+ :type _headers: dict, optional
2080
+ :param _host_index: set to override the host_index for a single
2081
+ request; this effectively ignores the host_index
2082
+ in the spec for a single request.
2083
+ :type _host_index: int, optional
2084
+ :return: Returns the result object.
2085
+ """ # noqa: E501
2086
+
2087
+ _param = self._post_products_by_resource_id_or_reference_deprecate_serialize(
2088
+ version=version,
2089
+ resource_id_or_reference=resource_id_or_reference,
2090
+ x_platform_id=x_platform_id,
2091
+ align_product_item_status=align_product_item_status,
2092
+ _request_auth=_request_auth,
2093
+ _content_type=_content_type,
2094
+ _headers=_headers,
2095
+ _host_index=_host_index
2096
+ )
2097
+
2098
+ _response_types_map: Dict[str, Optional[str]] = {
2099
+ '200': "Product",
2100
+ '400': "ApiError",
2101
+ '401': "ApiError",
2102
+ '403': "ApiError",
2103
+ '500': "ApiError",
2104
+ }
2105
+ response_data = self.api_client.call_api(
2106
+ *_param,
2107
+ _request_timeout=_request_timeout
2108
+ )
2109
+ response_data.read()
2110
+ return self.api_client.response_deserialize(
2111
+ response_data=response_data,
2112
+ response_types_map=_response_types_map,
2113
+ ).data
2114
+
2115
+
2116
+ @validate_call
2117
+ def post_products_by_resource_id_or_reference_deprecate_with_http_info(
2118
+ self,
2119
+ version: Annotated[StrictStr, Field(description="version")],
2120
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
2121
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2122
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
2123
+ _request_timeout: Union[
2124
+ None,
2125
+ Annotated[StrictFloat, Field(gt=0)],
2126
+ Tuple[
2127
+ Annotated[StrictFloat, Field(gt=0)],
2128
+ Annotated[StrictFloat, Field(gt=0)]
2129
+ ]
2130
+ ] = None,
2131
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2132
+ _content_type: Optional[StrictStr] = None,
2133
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2134
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2135
+ ) -> ApiResponse[Product]:
2136
+ """Deprecate a product
2137
+
2138
+ Requires the PRODUCT.STATUS.UPDATE permission.
2139
+
2140
+ :param version: version (required)
2141
+ :type version: str
2142
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
2143
+ :type resource_id_or_reference: str
2144
+ :param x_platform_id: Platform ID.
2145
+ :type x_platform_id: str
2146
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
2147
+ :type align_product_item_status: bool
2148
+ :param _request_timeout: timeout setting for this request. If one
2149
+ number provided, it will be total request
2150
+ timeout. It can also be a pair (tuple) of
2151
+ (connection, read) timeouts.
2152
+ :type _request_timeout: int, tuple(int, int), optional
2153
+ :param _request_auth: set to override the auth_settings for an a single
2154
+ request; this effectively ignores the
2155
+ authentication in the spec for a single request.
2156
+ :type _request_auth: dict, optional
2157
+ :param _content_type: force content-type for the request.
2158
+ :type _content_type: str, Optional
2159
+ :param _headers: set to override the headers for a single
2160
+ request; this effectively ignores the headers
2161
+ in the spec for a single request.
2162
+ :type _headers: dict, optional
2163
+ :param _host_index: set to override the host_index for a single
2164
+ request; this effectively ignores the host_index
2165
+ in the spec for a single request.
2166
+ :type _host_index: int, optional
2167
+ :return: Returns the result object.
2168
+ """ # noqa: E501
2169
+
2170
+ _param = self._post_products_by_resource_id_or_reference_deprecate_serialize(
2171
+ version=version,
2172
+ resource_id_or_reference=resource_id_or_reference,
2173
+ x_platform_id=x_platform_id,
2174
+ align_product_item_status=align_product_item_status,
2175
+ _request_auth=_request_auth,
2176
+ _content_type=_content_type,
2177
+ _headers=_headers,
2178
+ _host_index=_host_index
2179
+ )
2180
+
2181
+ _response_types_map: Dict[str, Optional[str]] = {
2182
+ '200': "Product",
2183
+ '400': "ApiError",
2184
+ '401': "ApiError",
2185
+ '403': "ApiError",
2186
+ '500': "ApiError",
2187
+ }
2188
+ response_data = self.api_client.call_api(
2189
+ *_param,
2190
+ _request_timeout=_request_timeout
2191
+ )
2192
+ response_data.read()
2193
+ return self.api_client.response_deserialize(
2194
+ response_data=response_data,
2195
+ response_types_map=_response_types_map,
2196
+ )
2197
+
2198
+
2199
+ @validate_call
2200
+ def post_products_by_resource_id_or_reference_deprecate_without_preload_content(
2201
+ self,
2202
+ version: Annotated[StrictStr, Field(description="version")],
2203
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
2204
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2205
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
2206
+ _request_timeout: Union[
2207
+ None,
2208
+ Annotated[StrictFloat, Field(gt=0)],
2209
+ Tuple[
2210
+ Annotated[StrictFloat, Field(gt=0)],
2211
+ Annotated[StrictFloat, Field(gt=0)]
2212
+ ]
2213
+ ] = None,
2214
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2215
+ _content_type: Optional[StrictStr] = None,
2216
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2217
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2218
+ ) -> RESTResponseType:
2219
+ """Deprecate a product
2220
+
2221
+ Requires the PRODUCT.STATUS.UPDATE permission.
2222
+
2223
+ :param version: version (required)
2224
+ :type version: str
2225
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
2226
+ :type resource_id_or_reference: str
2227
+ :param x_platform_id: Platform ID.
2228
+ :type x_platform_id: str
2229
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
2230
+ :type align_product_item_status: bool
2231
+ :param _request_timeout: timeout setting for this request. If one
2232
+ number provided, it will be total request
2233
+ timeout. It can also be a pair (tuple) of
2234
+ (connection, read) timeouts.
2235
+ :type _request_timeout: int, tuple(int, int), optional
2236
+ :param _request_auth: set to override the auth_settings for an a single
2237
+ request; this effectively ignores the
2238
+ authentication in the spec for a single request.
2239
+ :type _request_auth: dict, optional
2240
+ :param _content_type: force content-type for the request.
2241
+ :type _content_type: str, Optional
2242
+ :param _headers: set to override the headers for a single
2243
+ request; this effectively ignores the headers
2244
+ in the spec for a single request.
2245
+ :type _headers: dict, optional
2246
+ :param _host_index: set to override the host_index for a single
2247
+ request; this effectively ignores the host_index
2248
+ in the spec for a single request.
2249
+ :type _host_index: int, optional
2250
+ :return: Returns the result object.
2251
+ """ # noqa: E501
2252
+
2253
+ _param = self._post_products_by_resource_id_or_reference_deprecate_serialize(
2254
+ version=version,
2255
+ resource_id_or_reference=resource_id_or_reference,
2256
+ x_platform_id=x_platform_id,
2257
+ align_product_item_status=align_product_item_status,
2258
+ _request_auth=_request_auth,
2259
+ _content_type=_content_type,
2260
+ _headers=_headers,
2261
+ _host_index=_host_index
2262
+ )
2263
+
2264
+ _response_types_map: Dict[str, Optional[str]] = {
2265
+ '200': "Product",
2266
+ '400': "ApiError",
2267
+ '401': "ApiError",
2268
+ '403': "ApiError",
2269
+ '500': "ApiError",
2270
+ }
2271
+ response_data = self.api_client.call_api(
2272
+ *_param,
2273
+ _request_timeout=_request_timeout
2274
+ )
2275
+ return response_data.response
2276
+
2277
+
2278
+ def _post_products_by_resource_id_or_reference_deprecate_serialize(
2279
+ self,
2280
+ version,
2281
+ resource_id_or_reference,
2282
+ x_platform_id,
2283
+ align_product_item_status,
2284
+ _request_auth,
2285
+ _content_type,
2286
+ _headers,
2287
+ _host_index,
2288
+ ) -> RequestSerialized:
2289
+
2290
+ _host = None
2291
+
2292
+ _collection_formats: Dict[str, str] = {
2293
+ }
2294
+
2295
+ _path_params: Dict[str, str] = {}
2296
+ _query_params: List[Tuple[str, str]] = []
2297
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2298
+ _form_params: List[Tuple[str, str]] = []
2299
+ _files: Dict[
2300
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2301
+ ] = {}
2302
+ _body_params: Optional[bytes] = None
2303
+
2304
+ # process the path parameters
2305
+ if version is not None:
2306
+ _path_params['version'] = version
2307
+ if resource_id_or_reference is not None:
2308
+ _path_params['resourceIdOrReference'] = resource_id_or_reference
2309
+ # process the query parameters
2310
+ if align_product_item_status is not None:
2311
+
2312
+ _query_params.append(('align_product_item_status', align_product_item_status))
2313
+
2314
+ # process the header parameters
2315
+ if x_platform_id is not None:
2316
+ _header_params['x-platform-id'] = x_platform_id
2317
+ # process the form parameters
2318
+ # process the body parameter
2319
+
2320
+
2321
+ # set the HTTP header `Accept`
2322
+ if 'Accept' not in _header_params:
2323
+ _header_params['Accept'] = self.api_client.select_header_accept(
2324
+ [
2325
+ 'application/json',
2326
+ '*/*'
2327
+ ]
2328
+ )
2329
+
2330
+
2331
+ # authentication setting
2332
+ _auth_settings: List[str] = [
2333
+ 'JWT-Authentication',
2334
+ 'API-Key'
2335
+ ]
2336
+
2337
+ return self.api_client.param_serialize(
2338
+ method='POST',
2339
+ resource_path='/v{version}/products/{resourceIdOrReference}/deprecate',
2340
+ path_params=_path_params,
2341
+ query_params=_query_params,
2342
+ header_params=_header_params,
2343
+ body=_body_params,
2344
+ post_params=_form_params,
2345
+ files=_files,
2346
+ auth_settings=_auth_settings,
2347
+ collection_formats=_collection_formats,
2348
+ _host=_host,
2349
+ _request_auth=_request_auth
2350
+ )
2351
+
2352
+
2353
+
2354
+
2355
+ @validate_call
2356
+ def post_products_search(
2357
+ self,
2358
+ version: Annotated[StrictStr, Field(description="version")],
2359
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2360
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
2361
+ limit: Annotated[Optional[StrictInt], Field(description="The amount of records shown in the list")] = None,
2362
+ page: Annotated[Optional[StrictInt], Field(description="The page which is going to be shown")] = None,
2363
+ order_by: Annotated[Optional[StrictStr], Field(description="The parameter by which the response is ordered. default = name")] = None,
2364
+ order_direction: Annotated[Optional[StrictStr], Field(description="The parameter for the response ordering direction (asc, desc) default asc")] = None,
2365
+ search_create_request: Optional[SearchCreateRequest] = None,
2366
+ _request_timeout: Union[
2367
+ None,
2368
+ Annotated[StrictFloat, Field(gt=0)],
2369
+ Tuple[
2370
+ Annotated[StrictFloat, Field(gt=0)],
2371
+ Annotated[StrictFloat, Field(gt=0)]
2372
+ ]
2373
+ ] = None,
2374
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2375
+ _content_type: Optional[StrictStr] = None,
2376
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2377
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2378
+ ) -> ProductResponseWrapper:
2379
+ """Search products.
2380
+
2381
+ Requires the PRODUCT.VIEW permission.
2382
+
2383
+ :param version: version (required)
2384
+ :type version: str
2385
+ :param x_platform_id: Platform ID.
2386
+ :type x_platform_id: str
2387
+ :param expand: The id fields of the resources that are going to be expanded.
2388
+ :type expand: List[str]
2389
+ :param limit: The amount of records shown in the list
2390
+ :type limit: int
2391
+ :param page: The page which is going to be shown
2392
+ :type page: int
2393
+ :param order_by: The parameter by which the response is ordered. default = name
2394
+ :type order_by: str
2395
+ :param order_direction: The parameter for the response ordering direction (asc, desc) default asc
2396
+ :type order_direction: str
2397
+ :param search_create_request:
2398
+ :type search_create_request: SearchCreateRequest
2399
+ :param _request_timeout: timeout setting for this request. If one
2400
+ number provided, it will be total request
2401
+ timeout. It can also be a pair (tuple) of
2402
+ (connection, read) timeouts.
2403
+ :type _request_timeout: int, tuple(int, int), optional
2404
+ :param _request_auth: set to override the auth_settings for an a single
2405
+ request; this effectively ignores the
2406
+ authentication in the spec for a single request.
2407
+ :type _request_auth: dict, optional
2408
+ :param _content_type: force content-type for the request.
2409
+ :type _content_type: str, Optional
2410
+ :param _headers: set to override the headers for a single
2411
+ request; this effectively ignores the headers
2412
+ in the spec for a single request.
2413
+ :type _headers: dict, optional
2414
+ :param _host_index: set to override the host_index for a single
2415
+ request; this effectively ignores the host_index
2416
+ in the spec for a single request.
2417
+ :type _host_index: int, optional
2418
+ :return: Returns the result object.
2419
+ """ # noqa: E501
2420
+
2421
+ _param = self._post_products_search_serialize(
2422
+ version=version,
2423
+ x_platform_id=x_platform_id,
2424
+ expand=expand,
2425
+ limit=limit,
2426
+ page=page,
2427
+ order_by=order_by,
2428
+ order_direction=order_direction,
2429
+ search_create_request=search_create_request,
2430
+ _request_auth=_request_auth,
2431
+ _content_type=_content_type,
2432
+ _headers=_headers,
2433
+ _host_index=_host_index
2434
+ )
2435
+
2436
+ _response_types_map: Dict[str, Optional[str]] = {
2437
+ '200': "ProductResponseWrapper",
2438
+ '400': "ApiError",
2439
+ '401': "ApiError",
2440
+ '403': "ApiError",
2441
+ '500': "ApiError",
2442
+ }
2443
+ response_data = self.api_client.call_api(
2444
+ *_param,
2445
+ _request_timeout=_request_timeout
2446
+ )
2447
+ response_data.read()
2448
+ return self.api_client.response_deserialize(
2449
+ response_data=response_data,
2450
+ response_types_map=_response_types_map,
2451
+ ).data
2452
+
2453
+
2454
+ @validate_call
2455
+ def post_products_search_with_http_info(
2456
+ self,
2457
+ version: Annotated[StrictStr, Field(description="version")],
2458
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2459
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
2460
+ limit: Annotated[Optional[StrictInt], Field(description="The amount of records shown in the list")] = None,
2461
+ page: Annotated[Optional[StrictInt], Field(description="The page which is going to be shown")] = None,
2462
+ order_by: Annotated[Optional[StrictStr], Field(description="The parameter by which the response is ordered. default = name")] = None,
2463
+ order_direction: Annotated[Optional[StrictStr], Field(description="The parameter for the response ordering direction (asc, desc) default asc")] = None,
2464
+ search_create_request: Optional[SearchCreateRequest] = None,
2465
+ _request_timeout: Union[
2466
+ None,
2467
+ Annotated[StrictFloat, Field(gt=0)],
2468
+ Tuple[
2469
+ Annotated[StrictFloat, Field(gt=0)],
2470
+ Annotated[StrictFloat, Field(gt=0)]
2471
+ ]
2472
+ ] = None,
2473
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2474
+ _content_type: Optional[StrictStr] = None,
2475
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2476
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2477
+ ) -> ApiResponse[ProductResponseWrapper]:
2478
+ """Search products.
2479
+
2480
+ Requires the PRODUCT.VIEW permission.
2481
+
2482
+ :param version: version (required)
2483
+ :type version: str
2484
+ :param x_platform_id: Platform ID.
2485
+ :type x_platform_id: str
2486
+ :param expand: The id fields of the resources that are going to be expanded.
2487
+ :type expand: List[str]
2488
+ :param limit: The amount of records shown in the list
2489
+ :type limit: int
2490
+ :param page: The page which is going to be shown
2491
+ :type page: int
2492
+ :param order_by: The parameter by which the response is ordered. default = name
2493
+ :type order_by: str
2494
+ :param order_direction: The parameter for the response ordering direction (asc, desc) default asc
2495
+ :type order_direction: str
2496
+ :param search_create_request:
2497
+ :type search_create_request: SearchCreateRequest
2498
+ :param _request_timeout: timeout setting for this request. If one
2499
+ number provided, it will be total request
2500
+ timeout. It can also be a pair (tuple) of
2501
+ (connection, read) timeouts.
2502
+ :type _request_timeout: int, tuple(int, int), optional
2503
+ :param _request_auth: set to override the auth_settings for an a single
2504
+ request; this effectively ignores the
2505
+ authentication in the spec for a single request.
2506
+ :type _request_auth: dict, optional
2507
+ :param _content_type: force content-type for the request.
2508
+ :type _content_type: str, Optional
2509
+ :param _headers: set to override the headers for a single
2510
+ request; this effectively ignores the headers
2511
+ in the spec for a single request.
2512
+ :type _headers: dict, optional
2513
+ :param _host_index: set to override the host_index for a single
2514
+ request; this effectively ignores the host_index
2515
+ in the spec for a single request.
2516
+ :type _host_index: int, optional
2517
+ :return: Returns the result object.
2518
+ """ # noqa: E501
2519
+
2520
+ _param = self._post_products_search_serialize(
2521
+ version=version,
2522
+ x_platform_id=x_platform_id,
2523
+ expand=expand,
2524
+ limit=limit,
2525
+ page=page,
2526
+ order_by=order_by,
2527
+ order_direction=order_direction,
2528
+ search_create_request=search_create_request,
2529
+ _request_auth=_request_auth,
2530
+ _content_type=_content_type,
2531
+ _headers=_headers,
2532
+ _host_index=_host_index
2533
+ )
2534
+
2535
+ _response_types_map: Dict[str, Optional[str]] = {
2536
+ '200': "ProductResponseWrapper",
2537
+ '400': "ApiError",
2538
+ '401': "ApiError",
2539
+ '403': "ApiError",
2540
+ '500': "ApiError",
2541
+ }
2542
+ response_data = self.api_client.call_api(
2543
+ *_param,
2544
+ _request_timeout=_request_timeout
2545
+ )
2546
+ response_data.read()
2547
+ return self.api_client.response_deserialize(
2548
+ response_data=response_data,
2549
+ response_types_map=_response_types_map,
2550
+ )
2551
+
2552
+
2553
+ @validate_call
2554
+ def post_products_search_without_preload_content(
2555
+ self,
2556
+ version: Annotated[StrictStr, Field(description="version")],
2557
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2558
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The id fields of the resources that are going to be expanded.")] = None,
2559
+ limit: Annotated[Optional[StrictInt], Field(description="The amount of records shown in the list")] = None,
2560
+ page: Annotated[Optional[StrictInt], Field(description="The page which is going to be shown")] = None,
2561
+ order_by: Annotated[Optional[StrictStr], Field(description="The parameter by which the response is ordered. default = name")] = None,
2562
+ order_direction: Annotated[Optional[StrictStr], Field(description="The parameter for the response ordering direction (asc, desc) default asc")] = None,
2563
+ search_create_request: Optional[SearchCreateRequest] = None,
2564
+ _request_timeout: Union[
2565
+ None,
2566
+ Annotated[StrictFloat, Field(gt=0)],
2567
+ Tuple[
2568
+ Annotated[StrictFloat, Field(gt=0)],
2569
+ Annotated[StrictFloat, Field(gt=0)]
2570
+ ]
2571
+ ] = None,
2572
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2573
+ _content_type: Optional[StrictStr] = None,
2574
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2575
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2576
+ ) -> RESTResponseType:
2577
+ """Search products.
2578
+
2579
+ Requires the PRODUCT.VIEW permission.
2580
+
2581
+ :param version: version (required)
2582
+ :type version: str
2583
+ :param x_platform_id: Platform ID.
2584
+ :type x_platform_id: str
2585
+ :param expand: The id fields of the resources that are going to be expanded.
2586
+ :type expand: List[str]
2587
+ :param limit: The amount of records shown in the list
2588
+ :type limit: int
2589
+ :param page: The page which is going to be shown
2590
+ :type page: int
2591
+ :param order_by: The parameter by which the response is ordered. default = name
2592
+ :type order_by: str
2593
+ :param order_direction: The parameter for the response ordering direction (asc, desc) default asc
2594
+ :type order_direction: str
2595
+ :param search_create_request:
2596
+ :type search_create_request: SearchCreateRequest
2597
+ :param _request_timeout: timeout setting for this request. If one
2598
+ number provided, it will be total request
2599
+ timeout. It can also be a pair (tuple) of
2600
+ (connection, read) timeouts.
2601
+ :type _request_timeout: int, tuple(int, int), optional
2602
+ :param _request_auth: set to override the auth_settings for an a single
2603
+ request; this effectively ignores the
2604
+ authentication in the spec for a single request.
2605
+ :type _request_auth: dict, optional
2606
+ :param _content_type: force content-type for the request.
2607
+ :type _content_type: str, Optional
2608
+ :param _headers: set to override the headers for a single
2609
+ request; this effectively ignores the headers
2610
+ in the spec for a single request.
2611
+ :type _headers: dict, optional
2612
+ :param _host_index: set to override the host_index for a single
2613
+ request; this effectively ignores the host_index
2614
+ in the spec for a single request.
2615
+ :type _host_index: int, optional
2616
+ :return: Returns the result object.
2617
+ """ # noqa: E501
2618
+
2619
+ _param = self._post_products_search_serialize(
2620
+ version=version,
2621
+ x_platform_id=x_platform_id,
2622
+ expand=expand,
2623
+ limit=limit,
2624
+ page=page,
2625
+ order_by=order_by,
2626
+ order_direction=order_direction,
2627
+ search_create_request=search_create_request,
2628
+ _request_auth=_request_auth,
2629
+ _content_type=_content_type,
2630
+ _headers=_headers,
2631
+ _host_index=_host_index
2632
+ )
2633
+
2634
+ _response_types_map: Dict[str, Optional[str]] = {
2635
+ '200': "ProductResponseWrapper",
2636
+ '400': "ApiError",
2637
+ '401': "ApiError",
2638
+ '403': "ApiError",
2639
+ '500': "ApiError",
2640
+ }
2641
+ response_data = self.api_client.call_api(
2642
+ *_param,
2643
+ _request_timeout=_request_timeout
2644
+ )
2645
+ return response_data.response
2646
+
2647
+
2648
+ def _post_products_search_serialize(
2649
+ self,
2650
+ version,
2651
+ x_platform_id,
2652
+ expand,
2653
+ limit,
2654
+ page,
2655
+ order_by,
2656
+ order_direction,
2657
+ search_create_request,
2658
+ _request_auth,
2659
+ _content_type,
2660
+ _headers,
2661
+ _host_index,
2662
+ ) -> RequestSerialized:
2663
+
2664
+ _host = None
2665
+
2666
+ _collection_formats: Dict[str, str] = {
2667
+ 'expand[]': 'multi',
2668
+ }
2669
+
2670
+ _path_params: Dict[str, str] = {}
2671
+ _query_params: List[Tuple[str, str]] = []
2672
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2673
+ _form_params: List[Tuple[str, str]] = []
2674
+ _files: Dict[
2675
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2676
+ ] = {}
2677
+ _body_params: Optional[bytes] = None
2678
+
2679
+ # process the path parameters
2680
+ if version is not None:
2681
+ _path_params['version'] = version
2682
+ # process the query parameters
2683
+ if expand is not None:
2684
+
2685
+ _query_params.append(('expand[]', expand))
2686
+
2687
+ if limit is not None:
2688
+
2689
+ _query_params.append(('limit', limit))
2690
+
2691
+ if page is not None:
2692
+
2693
+ _query_params.append(('page', page))
2694
+
2695
+ if order_by is not None:
2696
+
2697
+ _query_params.append(('order_by', order_by))
2698
+
2699
+ if order_direction is not None:
2700
+
2701
+ _query_params.append(('order_direction', order_direction))
2702
+
2703
+ # process the header parameters
2704
+ if x_platform_id is not None:
2705
+ _header_params['x-platform-id'] = x_platform_id
2706
+ # process the form parameters
2707
+ # process the body parameter
2708
+ if search_create_request is not None:
2709
+ _body_params = search_create_request
2710
+
2711
+
2712
+ # set the HTTP header `Accept`
2713
+ if 'Accept' not in _header_params:
2714
+ _header_params['Accept'] = self.api_client.select_header_accept(
2715
+ [
2716
+ 'application/json',
2717
+ '*/*'
2718
+ ]
2719
+ )
2720
+
2721
+ # set the HTTP header `Content-Type`
2722
+ if _content_type:
2723
+ _header_params['Content-Type'] = _content_type
2724
+ else:
2725
+ _default_content_type = (
2726
+ self.api_client.select_header_content_type(
2727
+ [
2728
+ 'application/json'
2729
+ ]
2730
+ )
2731
+ )
2732
+ if _default_content_type is not None:
2733
+ _header_params['Content-Type'] = _default_content_type
2734
+
2735
+ # authentication setting
2736
+ _auth_settings: List[str] = [
2737
+ 'JWT-Authentication',
2738
+ 'API-Key'
2739
+ ]
2740
+
2741
+ return self.api_client.param_serialize(
2742
+ method='POST',
2743
+ resource_path='/v{version}/products/search',
2744
+ path_params=_path_params,
2745
+ query_params=_query_params,
2746
+ header_params=_header_params,
2747
+ body=_body_params,
2748
+ post_params=_form_params,
2749
+ files=_files,
2750
+ auth_settings=_auth_settings,
2751
+ collection_formats=_collection_formats,
2752
+ _host=_host,
2753
+ _request_auth=_request_auth
2754
+ )
2755
+
2756
+
2757
+
2758
+
2759
+ @validate_call
2760
+ def update_products(
2761
+ self,
2762
+ version: Annotated[StrictStr, Field(description="version")],
2763
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2764
+ identifier_field: Annotated[Optional[StrictStr], Field(description="Which field to use to identify whether the resource exists or not")] = None,
2765
+ custom_field_reference: Annotated[Optional[StrictStr], Field(description="Which custom field to use to identify whether the resource exists or not")] = None,
2766
+ field_actions: Annotated[Optional[Dict[str, Dict[str, StrictStr]]], Field(description="The list of actions for specific fields.")] = None,
2767
+ product_create_request: Optional[ProductCreateRequest] = None,
2768
+ _request_timeout: Union[
2769
+ None,
2770
+ Annotated[StrictFloat, Field(gt=0)],
2771
+ Tuple[
2772
+ Annotated[StrictFloat, Field(gt=0)],
2773
+ Annotated[StrictFloat, Field(gt=0)]
2774
+ ]
2775
+ ] = None,
2776
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2777
+ _content_type: Optional[StrictStr] = None,
2778
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2779
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2780
+ ) -> Product:
2781
+ """Update or create a product (upsert)
2782
+
2783
+ Requires the PRODUCT.CREATE or PRODUCT.UPDATE permission.
2784
+
2785
+ :param version: version (required)
2786
+ :type version: str
2787
+ :param x_platform_id: Platform ID.
2788
+ :type x_platform_id: str
2789
+ :param identifier_field: Which field to use to identify whether the resource exists or not
2790
+ :type identifier_field: str
2791
+ :param custom_field_reference: Which custom field to use to identify whether the resource exists or not
2792
+ :type custom_field_reference: str
2793
+ :param field_actions: The list of actions for specific fields.
2794
+ :type field_actions: Dict[str, str]
2795
+ :param product_create_request:
2796
+ :type product_create_request: ProductCreateRequest
2797
+ :param _request_timeout: timeout setting for this request. If one
2798
+ number provided, it will be total request
2799
+ timeout. It can also be a pair (tuple) of
2800
+ (connection, read) timeouts.
2801
+ :type _request_timeout: int, tuple(int, int), optional
2802
+ :param _request_auth: set to override the auth_settings for an a single
2803
+ request; this effectively ignores the
2804
+ authentication in the spec for a single request.
2805
+ :type _request_auth: dict, optional
2806
+ :param _content_type: force content-type for the request.
2807
+ :type _content_type: str, Optional
2808
+ :param _headers: set to override the headers for a single
2809
+ request; this effectively ignores the headers
2810
+ in the spec for a single request.
2811
+ :type _headers: dict, optional
2812
+ :param _host_index: set to override the host_index for a single
2813
+ request; this effectively ignores the host_index
2814
+ in the spec for a single request.
2815
+ :type _host_index: int, optional
2816
+ :return: Returns the result object.
2817
+ """ # noqa: E501
2818
+
2819
+ _param = self._update_products_serialize(
2820
+ version=version,
2821
+ x_platform_id=x_platform_id,
2822
+ identifier_field=identifier_field,
2823
+ custom_field_reference=custom_field_reference,
2824
+ field_actions=field_actions,
2825
+ product_create_request=product_create_request,
2826
+ _request_auth=_request_auth,
2827
+ _content_type=_content_type,
2828
+ _headers=_headers,
2829
+ _host_index=_host_index
2830
+ )
2831
+
2832
+ _response_types_map: Dict[str, Optional[str]] = {
2833
+ '201': "Product",
2834
+ '400': "ApiError",
2835
+ '401': "ApiError",
2836
+ '403': "ApiError",
2837
+ '404': "ApiError",
2838
+ '500': "ApiError",
2839
+ }
2840
+ response_data = self.api_client.call_api(
2841
+ *_param,
2842
+ _request_timeout=_request_timeout
2843
+ )
2844
+ response_data.read()
2845
+ return self.api_client.response_deserialize(
2846
+ response_data=response_data,
2847
+ response_types_map=_response_types_map,
2848
+ ).data
2849
+
2850
+
2851
+ @validate_call
2852
+ def update_products_with_http_info(
2853
+ self,
2854
+ version: Annotated[StrictStr, Field(description="version")],
2855
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2856
+ identifier_field: Annotated[Optional[StrictStr], Field(description="Which field to use to identify whether the resource exists or not")] = None,
2857
+ custom_field_reference: Annotated[Optional[StrictStr], Field(description="Which custom field to use to identify whether the resource exists or not")] = None,
2858
+ field_actions: Annotated[Optional[Dict[str, Dict[str, StrictStr]]], Field(description="The list of actions for specific fields.")] = None,
2859
+ product_create_request: Optional[ProductCreateRequest] = None,
2860
+ _request_timeout: Union[
2861
+ None,
2862
+ Annotated[StrictFloat, Field(gt=0)],
2863
+ Tuple[
2864
+ Annotated[StrictFloat, Field(gt=0)],
2865
+ Annotated[StrictFloat, Field(gt=0)]
2866
+ ]
2867
+ ] = None,
2868
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2869
+ _content_type: Optional[StrictStr] = None,
2870
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2871
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2872
+ ) -> ApiResponse[Product]:
2873
+ """Update or create a product (upsert)
2874
+
2875
+ Requires the PRODUCT.CREATE or PRODUCT.UPDATE permission.
2876
+
2877
+ :param version: version (required)
2878
+ :type version: str
2879
+ :param x_platform_id: Platform ID.
2880
+ :type x_platform_id: str
2881
+ :param identifier_field: Which field to use to identify whether the resource exists or not
2882
+ :type identifier_field: str
2883
+ :param custom_field_reference: Which custom field to use to identify whether the resource exists or not
2884
+ :type custom_field_reference: str
2885
+ :param field_actions: The list of actions for specific fields.
2886
+ :type field_actions: Dict[str, str]
2887
+ :param product_create_request:
2888
+ :type product_create_request: ProductCreateRequest
2889
+ :param _request_timeout: timeout setting for this request. If one
2890
+ number provided, it will be total request
2891
+ timeout. It can also be a pair (tuple) of
2892
+ (connection, read) timeouts.
2893
+ :type _request_timeout: int, tuple(int, int), optional
2894
+ :param _request_auth: set to override the auth_settings for an a single
2895
+ request; this effectively ignores the
2896
+ authentication in the spec for a single request.
2897
+ :type _request_auth: dict, optional
2898
+ :param _content_type: force content-type for the request.
2899
+ :type _content_type: str, Optional
2900
+ :param _headers: set to override the headers for a single
2901
+ request; this effectively ignores the headers
2902
+ in the spec for a single request.
2903
+ :type _headers: dict, optional
2904
+ :param _host_index: set to override the host_index for a single
2905
+ request; this effectively ignores the host_index
2906
+ in the spec for a single request.
2907
+ :type _host_index: int, optional
2908
+ :return: Returns the result object.
2909
+ """ # noqa: E501
2910
+
2911
+ _param = self._update_products_serialize(
2912
+ version=version,
2913
+ x_platform_id=x_platform_id,
2914
+ identifier_field=identifier_field,
2915
+ custom_field_reference=custom_field_reference,
2916
+ field_actions=field_actions,
2917
+ product_create_request=product_create_request,
2918
+ _request_auth=_request_auth,
2919
+ _content_type=_content_type,
2920
+ _headers=_headers,
2921
+ _host_index=_host_index
2922
+ )
2923
+
2924
+ _response_types_map: Dict[str, Optional[str]] = {
2925
+ '201': "Product",
2926
+ '400': "ApiError",
2927
+ '401': "ApiError",
2928
+ '403': "ApiError",
2929
+ '404': "ApiError",
2930
+ '500': "ApiError",
2931
+ }
2932
+ response_data = self.api_client.call_api(
2933
+ *_param,
2934
+ _request_timeout=_request_timeout
2935
+ )
2936
+ response_data.read()
2937
+ return self.api_client.response_deserialize(
2938
+ response_data=response_data,
2939
+ response_types_map=_response_types_map,
2940
+ )
2941
+
2942
+
2943
+ @validate_call
2944
+ def update_products_without_preload_content(
2945
+ self,
2946
+ version: Annotated[StrictStr, Field(description="version")],
2947
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
2948
+ identifier_field: Annotated[Optional[StrictStr], Field(description="Which field to use to identify whether the resource exists or not")] = None,
2949
+ custom_field_reference: Annotated[Optional[StrictStr], Field(description="Which custom field to use to identify whether the resource exists or not")] = None,
2950
+ field_actions: Annotated[Optional[Dict[str, Dict[str, StrictStr]]], Field(description="The list of actions for specific fields.")] = None,
2951
+ product_create_request: Optional[ProductCreateRequest] = None,
2952
+ _request_timeout: Union[
2953
+ None,
2954
+ Annotated[StrictFloat, Field(gt=0)],
2955
+ Tuple[
2956
+ Annotated[StrictFloat, Field(gt=0)],
2957
+ Annotated[StrictFloat, Field(gt=0)]
2958
+ ]
2959
+ ] = None,
2960
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2961
+ _content_type: Optional[StrictStr] = None,
2962
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2963
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2964
+ ) -> RESTResponseType:
2965
+ """Update or create a product (upsert)
2966
+
2967
+ Requires the PRODUCT.CREATE or PRODUCT.UPDATE permission.
2968
+
2969
+ :param version: version (required)
2970
+ :type version: str
2971
+ :param x_platform_id: Platform ID.
2972
+ :type x_platform_id: str
2973
+ :param identifier_field: Which field to use to identify whether the resource exists or not
2974
+ :type identifier_field: str
2975
+ :param custom_field_reference: Which custom field to use to identify whether the resource exists or not
2976
+ :type custom_field_reference: str
2977
+ :param field_actions: The list of actions for specific fields.
2978
+ :type field_actions: Dict[str, str]
2979
+ :param product_create_request:
2980
+ :type product_create_request: ProductCreateRequest
2981
+ :param _request_timeout: timeout setting for this request. If one
2982
+ number provided, it will be total request
2983
+ timeout. It can also be a pair (tuple) of
2984
+ (connection, read) timeouts.
2985
+ :type _request_timeout: int, tuple(int, int), optional
2986
+ :param _request_auth: set to override the auth_settings for an a single
2987
+ request; this effectively ignores the
2988
+ authentication in the spec for a single request.
2989
+ :type _request_auth: dict, optional
2990
+ :param _content_type: force content-type for the request.
2991
+ :type _content_type: str, Optional
2992
+ :param _headers: set to override the headers for a single
2993
+ request; this effectively ignores the headers
2994
+ in the spec for a single request.
2995
+ :type _headers: dict, optional
2996
+ :param _host_index: set to override the host_index for a single
2997
+ request; this effectively ignores the host_index
2998
+ in the spec for a single request.
2999
+ :type _host_index: int, optional
3000
+ :return: Returns the result object.
3001
+ """ # noqa: E501
3002
+
3003
+ _param = self._update_products_serialize(
3004
+ version=version,
3005
+ x_platform_id=x_platform_id,
3006
+ identifier_field=identifier_field,
3007
+ custom_field_reference=custom_field_reference,
3008
+ field_actions=field_actions,
3009
+ product_create_request=product_create_request,
3010
+ _request_auth=_request_auth,
3011
+ _content_type=_content_type,
3012
+ _headers=_headers,
3013
+ _host_index=_host_index
3014
+ )
3015
+
3016
+ _response_types_map: Dict[str, Optional[str]] = {
3017
+ '201': "Product",
3018
+ '400': "ApiError",
3019
+ '401': "ApiError",
3020
+ '403': "ApiError",
3021
+ '404': "ApiError",
3022
+ '500': "ApiError",
3023
+ }
3024
+ response_data = self.api_client.call_api(
3025
+ *_param,
3026
+ _request_timeout=_request_timeout
3027
+ )
3028
+ return response_data.response
3029
+
3030
+
3031
+ def _update_products_serialize(
3032
+ self,
3033
+ version,
3034
+ x_platform_id,
3035
+ identifier_field,
3036
+ custom_field_reference,
3037
+ field_actions,
3038
+ product_create_request,
3039
+ _request_auth,
3040
+ _content_type,
3041
+ _headers,
3042
+ _host_index,
3043
+ ) -> RequestSerialized:
3044
+
3045
+ _host = None
3046
+
3047
+ _collection_formats: Dict[str, str] = {
3048
+ }
3049
+
3050
+ _path_params: Dict[str, str] = {}
3051
+ _query_params: List[Tuple[str, str]] = []
3052
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3053
+ _form_params: List[Tuple[str, str]] = []
3054
+ _files: Dict[
3055
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3056
+ ] = {}
3057
+ _body_params: Optional[bytes] = None
3058
+
3059
+ # process the path parameters
3060
+ if version is not None:
3061
+ _path_params['version'] = version
3062
+ # process the query parameters
3063
+ if identifier_field is not None:
3064
+
3065
+ _query_params.append(('identifier_field', identifier_field))
3066
+
3067
+ if custom_field_reference is not None:
3068
+
3069
+ _query_params.append(('custom_field_reference', custom_field_reference))
3070
+
3071
+ if field_actions is not None:
3072
+
3073
+ _query_params.append(('field_actions', field_actions))
3074
+
3075
+ # process the header parameters
3076
+ if x_platform_id is not None:
3077
+ _header_params['x-platform-id'] = x_platform_id
3078
+ # process the form parameters
3079
+ # process the body parameter
3080
+ if product_create_request is not None:
3081
+ _body_params = product_create_request
3082
+
3083
+
3084
+ # set the HTTP header `Accept`
3085
+ if 'Accept' not in _header_params:
3086
+ _header_params['Accept'] = self.api_client.select_header_accept(
3087
+ [
3088
+ 'application/json',
3089
+ '*/*'
3090
+ ]
3091
+ )
3092
+
3093
+ # set the HTTP header `Content-Type`
3094
+ if _content_type:
3095
+ _header_params['Content-Type'] = _content_type
3096
+ else:
3097
+ _default_content_type = (
3098
+ self.api_client.select_header_content_type(
3099
+ [
3100
+ 'application/json'
3101
+ ]
3102
+ )
3103
+ )
3104
+ if _default_content_type is not None:
3105
+ _header_params['Content-Type'] = _default_content_type
3106
+
3107
+ # authentication setting
3108
+ _auth_settings: List[str] = [
3109
+ 'JWT-Authentication',
3110
+ 'API-Key'
3111
+ ]
3112
+
3113
+ return self.api_client.param_serialize(
3114
+ method='PUT',
3115
+ resource_path='/v{version}/products',
3116
+ path_params=_path_params,
3117
+ query_params=_query_params,
3118
+ header_params=_header_params,
3119
+ body=_body_params,
3120
+ post_params=_form_params,
3121
+ files=_files,
3122
+ auth_settings=_auth_settings,
3123
+ collection_formats=_collection_formats,
3124
+ _host=_host,
3125
+ _request_auth=_request_auth
3126
+ )
3127
+
3128
+
3129
+
3130
+
3131
+ @validate_call
3132
+ def update_products_by_resource_id_or_reference(
3133
+ self,
3134
+ version: Annotated[StrictStr, Field(description="version")],
3135
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
3136
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
3137
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
3138
+ product_update_request: Optional[ProductUpdateRequest] = None,
3139
+ _request_timeout: Union[
3140
+ None,
3141
+ Annotated[StrictFloat, Field(gt=0)],
3142
+ Tuple[
3143
+ Annotated[StrictFloat, Field(gt=0)],
3144
+ Annotated[StrictFloat, Field(gt=0)]
3145
+ ]
3146
+ ] = None,
3147
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3148
+ _content_type: Optional[StrictStr] = None,
3149
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3150
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3151
+ ) -> Product:
3152
+ """Update a product
3153
+
3154
+ Requires the PRODUCT.UPDATE permission.
3155
+
3156
+ :param version: version (required)
3157
+ :type version: str
3158
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
3159
+ :type resource_id_or_reference: str
3160
+ :param x_platform_id: Platform ID.
3161
+ :type x_platform_id: str
3162
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
3163
+ :type align_product_item_status: bool
3164
+ :param product_update_request:
3165
+ :type product_update_request: ProductUpdateRequest
3166
+ :param _request_timeout: timeout setting for this request. If one
3167
+ number provided, it will be total request
3168
+ timeout. It can also be a pair (tuple) of
3169
+ (connection, read) timeouts.
3170
+ :type _request_timeout: int, tuple(int, int), optional
3171
+ :param _request_auth: set to override the auth_settings for an a single
3172
+ request; this effectively ignores the
3173
+ authentication in the spec for a single request.
3174
+ :type _request_auth: dict, optional
3175
+ :param _content_type: force content-type for the request.
3176
+ :type _content_type: str, Optional
3177
+ :param _headers: set to override the headers for a single
3178
+ request; this effectively ignores the headers
3179
+ in the spec for a single request.
3180
+ :type _headers: dict, optional
3181
+ :param _host_index: set to override the host_index for a single
3182
+ request; this effectively ignores the host_index
3183
+ in the spec for a single request.
3184
+ :type _host_index: int, optional
3185
+ :return: Returns the result object.
3186
+ """ # noqa: E501
3187
+
3188
+ _param = self._update_products_by_resource_id_or_reference_serialize(
3189
+ version=version,
3190
+ resource_id_or_reference=resource_id_or_reference,
3191
+ x_platform_id=x_platform_id,
3192
+ align_product_item_status=align_product_item_status,
3193
+ product_update_request=product_update_request,
3194
+ _request_auth=_request_auth,
3195
+ _content_type=_content_type,
3196
+ _headers=_headers,
3197
+ _host_index=_host_index
3198
+ )
3199
+
3200
+ _response_types_map: Dict[str, Optional[str]] = {
3201
+ '200': "Product",
3202
+ '400': "ApiError",
3203
+ '401': "ApiError",
3204
+ '403': "ApiError",
3205
+ '500': "ApiError",
3206
+ }
3207
+ response_data = self.api_client.call_api(
3208
+ *_param,
3209
+ _request_timeout=_request_timeout
3210
+ )
3211
+ response_data.read()
3212
+ return self.api_client.response_deserialize(
3213
+ response_data=response_data,
3214
+ response_types_map=_response_types_map,
3215
+ ).data
3216
+
3217
+
3218
+ @validate_call
3219
+ def update_products_by_resource_id_or_reference_with_http_info(
3220
+ self,
3221
+ version: Annotated[StrictStr, Field(description="version")],
3222
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
3223
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
3224
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
3225
+ product_update_request: Optional[ProductUpdateRequest] = None,
3226
+ _request_timeout: Union[
3227
+ None,
3228
+ Annotated[StrictFloat, Field(gt=0)],
3229
+ Tuple[
3230
+ Annotated[StrictFloat, Field(gt=0)],
3231
+ Annotated[StrictFloat, Field(gt=0)]
3232
+ ]
3233
+ ] = None,
3234
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3235
+ _content_type: Optional[StrictStr] = None,
3236
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3237
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3238
+ ) -> ApiResponse[Product]:
3239
+ """Update a product
3240
+
3241
+ Requires the PRODUCT.UPDATE permission.
3242
+
3243
+ :param version: version (required)
3244
+ :type version: str
3245
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
3246
+ :type resource_id_or_reference: str
3247
+ :param x_platform_id: Platform ID.
3248
+ :type x_platform_id: str
3249
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
3250
+ :type align_product_item_status: bool
3251
+ :param product_update_request:
3252
+ :type product_update_request: ProductUpdateRequest
3253
+ :param _request_timeout: timeout setting for this request. If one
3254
+ number provided, it will be total request
3255
+ timeout. It can also be a pair (tuple) of
3256
+ (connection, read) timeouts.
3257
+ :type _request_timeout: int, tuple(int, int), optional
3258
+ :param _request_auth: set to override the auth_settings for an a single
3259
+ request; this effectively ignores the
3260
+ authentication in the spec for a single request.
3261
+ :type _request_auth: dict, optional
3262
+ :param _content_type: force content-type for the request.
3263
+ :type _content_type: str, Optional
3264
+ :param _headers: set to override the headers for a single
3265
+ request; this effectively ignores the headers
3266
+ in the spec for a single request.
3267
+ :type _headers: dict, optional
3268
+ :param _host_index: set to override the host_index for a single
3269
+ request; this effectively ignores the host_index
3270
+ in the spec for a single request.
3271
+ :type _host_index: int, optional
3272
+ :return: Returns the result object.
3273
+ """ # noqa: E501
3274
+
3275
+ _param = self._update_products_by_resource_id_or_reference_serialize(
3276
+ version=version,
3277
+ resource_id_or_reference=resource_id_or_reference,
3278
+ x_platform_id=x_platform_id,
3279
+ align_product_item_status=align_product_item_status,
3280
+ product_update_request=product_update_request,
3281
+ _request_auth=_request_auth,
3282
+ _content_type=_content_type,
3283
+ _headers=_headers,
3284
+ _host_index=_host_index
3285
+ )
3286
+
3287
+ _response_types_map: Dict[str, Optional[str]] = {
3288
+ '200': "Product",
3289
+ '400': "ApiError",
3290
+ '401': "ApiError",
3291
+ '403': "ApiError",
3292
+ '500': "ApiError",
3293
+ }
3294
+ response_data = self.api_client.call_api(
3295
+ *_param,
3296
+ _request_timeout=_request_timeout
3297
+ )
3298
+ response_data.read()
3299
+ return self.api_client.response_deserialize(
3300
+ response_data=response_data,
3301
+ response_types_map=_response_types_map,
3302
+ )
3303
+
3304
+
3305
+ @validate_call
3306
+ def update_products_by_resource_id_or_reference_without_preload_content(
3307
+ self,
3308
+ version: Annotated[StrictStr, Field(description="version")],
3309
+ resource_id_or_reference: Annotated[StrictStr, Field(description="The ID of the resource for which the action is posted.")],
3310
+ x_platform_id: Annotated[Optional[StrictStr], Field(description="Platform ID.")] = None,
3311
+ align_product_item_status: Annotated[Optional[StrictBool], Field(description="Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated")] = None,
3312
+ product_update_request: Optional[ProductUpdateRequest] = None,
3313
+ _request_timeout: Union[
3314
+ None,
3315
+ Annotated[StrictFloat, Field(gt=0)],
3316
+ Tuple[
3317
+ Annotated[StrictFloat, Field(gt=0)],
3318
+ Annotated[StrictFloat, Field(gt=0)]
3319
+ ]
3320
+ ] = None,
3321
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3322
+ _content_type: Optional[StrictStr] = None,
3323
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3324
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3325
+ ) -> RESTResponseType:
3326
+ """Update a product
3327
+
3328
+ Requires the PRODUCT.UPDATE permission.
3329
+
3330
+ :param version: version (required)
3331
+ :type version: str
3332
+ :param resource_id_or_reference: The ID of the resource for which the action is posted. (required)
3333
+ :type resource_id_or_reference: str
3334
+ :param x_platform_id: Platform ID.
3335
+ :type x_platform_id: str
3336
+ :param align_product_item_status: Updates the status of product items to the status of the Product, e.g. if theDD Product is Activated, the product items are activated
3337
+ :type align_product_item_status: bool
3338
+ :param product_update_request:
3339
+ :type product_update_request: ProductUpdateRequest
3340
+ :param _request_timeout: timeout setting for this request. If one
3341
+ number provided, it will be total request
3342
+ timeout. It can also be a pair (tuple) of
3343
+ (connection, read) timeouts.
3344
+ :type _request_timeout: int, tuple(int, int), optional
3345
+ :param _request_auth: set to override the auth_settings for an a single
3346
+ request; this effectively ignores the
3347
+ authentication in the spec for a single request.
3348
+ :type _request_auth: dict, optional
3349
+ :param _content_type: force content-type for the request.
3350
+ :type _content_type: str, Optional
3351
+ :param _headers: set to override the headers for a single
3352
+ request; this effectively ignores the headers
3353
+ in the spec for a single request.
3354
+ :type _headers: dict, optional
3355
+ :param _host_index: set to override the host_index for a single
3356
+ request; this effectively ignores the host_index
3357
+ in the spec for a single request.
3358
+ :type _host_index: int, optional
3359
+ :return: Returns the result object.
3360
+ """ # noqa: E501
3361
+
3362
+ _param = self._update_products_by_resource_id_or_reference_serialize(
3363
+ version=version,
3364
+ resource_id_or_reference=resource_id_or_reference,
3365
+ x_platform_id=x_platform_id,
3366
+ align_product_item_status=align_product_item_status,
3367
+ product_update_request=product_update_request,
3368
+ _request_auth=_request_auth,
3369
+ _content_type=_content_type,
3370
+ _headers=_headers,
3371
+ _host_index=_host_index
3372
+ )
3373
+
3374
+ _response_types_map: Dict[str, Optional[str]] = {
3375
+ '200': "Product",
3376
+ '400': "ApiError",
3377
+ '401': "ApiError",
3378
+ '403': "ApiError",
3379
+ '500': "ApiError",
3380
+ }
3381
+ response_data = self.api_client.call_api(
3382
+ *_param,
3383
+ _request_timeout=_request_timeout
3384
+ )
3385
+ return response_data.response
3386
+
3387
+
3388
+ def _update_products_by_resource_id_or_reference_serialize(
3389
+ self,
3390
+ version,
3391
+ resource_id_or_reference,
3392
+ x_platform_id,
3393
+ align_product_item_status,
3394
+ product_update_request,
3395
+ _request_auth,
3396
+ _content_type,
3397
+ _headers,
3398
+ _host_index,
3399
+ ) -> RequestSerialized:
3400
+
3401
+ _host = None
3402
+
3403
+ _collection_formats: Dict[str, str] = {
3404
+ }
3405
+
3406
+ _path_params: Dict[str, str] = {}
3407
+ _query_params: List[Tuple[str, str]] = []
3408
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3409
+ _form_params: List[Tuple[str, str]] = []
3410
+ _files: Dict[
3411
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3412
+ ] = {}
3413
+ _body_params: Optional[bytes] = None
3414
+
3415
+ # process the path parameters
3416
+ if version is not None:
3417
+ _path_params['version'] = version
3418
+ if resource_id_or_reference is not None:
3419
+ _path_params['resourceIdOrReference'] = resource_id_or_reference
3420
+ # process the query parameters
3421
+ if align_product_item_status is not None:
3422
+
3423
+ _query_params.append(('align_product_item_status', align_product_item_status))
3424
+
3425
+ # process the header parameters
3426
+ if x_platform_id is not None:
3427
+ _header_params['x-platform-id'] = x_platform_id
3428
+ # process the form parameters
3429
+ # process the body parameter
3430
+ if product_update_request is not None:
3431
+ _body_params = product_update_request
3432
+
3433
+
3434
+ # set the HTTP header `Accept`
3435
+ if 'Accept' not in _header_params:
3436
+ _header_params['Accept'] = self.api_client.select_header_accept(
3437
+ [
3438
+ 'application/json',
3439
+ '*/*'
3440
+ ]
3441
+ )
3442
+
3443
+ # set the HTTP header `Content-Type`
3444
+ if _content_type:
3445
+ _header_params['Content-Type'] = _content_type
3446
+ else:
3447
+ _default_content_type = (
3448
+ self.api_client.select_header_content_type(
3449
+ [
3450
+ 'application/json'
3451
+ ]
3452
+ )
3453
+ )
3454
+ if _default_content_type is not None:
3455
+ _header_params['Content-Type'] = _default_content_type
3456
+
3457
+ # authentication setting
3458
+ _auth_settings: List[str] = [
3459
+ 'JWT-Authentication',
3460
+ 'API-Key'
3461
+ ]
3462
+
3463
+ return self.api_client.param_serialize(
3464
+ method='PATCH',
3465
+ resource_path='/v{version}/products/{resourceIdOrReference}',
3466
+ path_params=_path_params,
3467
+ query_params=_query_params,
3468
+ header_params=_header_params,
3469
+ body=_body_params,
3470
+ post_params=_form_params,
3471
+ files=_files,
3472
+ auth_settings=_auth_settings,
3473
+ collection_formats=_collection_formats,
3474
+ _host=_host,
3475
+ _request_auth=_request_auth
3476
+ )
3477
+
3478
+