cybersource_rest_client 0.0.85 → 0.0.87

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 (369) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/util/Cache.rb +9 -6
  3. data/lib/AuthenticationSDK/util/CertificateUtility.rb +14 -6
  4. data/lib/AuthenticationSDK/util/Utility.rb +16 -5
  5. data/lib/cybersource_rest_client/api/agent_capabilities_api.rb +1868 -122
  6. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +3 -3
  7. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +6 -6
  8. data/lib/cybersource_rest_client/api/emv_tag_details_api.rb +1 -1
  9. data/lib/cybersource_rest_client/api/foreign_exchange_rates_api.rb +146 -0
  10. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +9 -9
  11. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +94 -4
  12. data/lib/cybersource_rest_client/api/merchant_capabilities_api.rb +1065 -0
  13. data/lib/cybersource_rest_client/api/merchant_defined_fields_api.rb +361 -0
  14. data/lib/cybersource_rest_client/api/network_tokens_api.rb +4 -4
  15. data/lib/cybersource_rest_client/api/offers_api.rb +3 -3
  16. data/lib/cybersource_rest_client/api/orders_api.rb +2 -2
  17. data/lib/cybersource_rest_client/api/payment_tokens_api.rb +1 -1
  18. data/lib/cybersource_rest_client/api/plans_api.rb +1 -1
  19. data/lib/cybersource_rest_client/api/pull_funds_api.rb +3 -3
  20. data/lib/cybersource_rest_client/api/search_transactions_api.rb +2 -2
  21. data/lib/cybersource_rest_client/api/subscriptions_api.rb +2 -2
  22. data/lib/cybersource_rest_client/api/subscriptions_follow_ons_api.rb +2 -2
  23. data/lib/cybersource_rest_client/api/transaction_details_api.rb +1 -1
  24. data/lib/cybersource_rest_client/api/transaction_query_api.rb +158 -0
  25. data/lib/cybersource_rest_client/api/visa_protect_risk_insights_api.rb +104 -0
  26. data/lib/cybersource_rest_client/models/acp_checkout_session_response_buyer.rb +254 -0
  27. data/lib/cybersource_rest_client/models/acp_complete_checkout_request.rb +205 -0
  28. data/lib/cybersource_rest_client/models/acp_complete_checkout_response_buyer.rb +254 -0
  29. data/lib/cybersource_rest_client/models/acp_complete_checkout_session_buyer.rb +254 -0
  30. data/lib/cybersource_rest_client/models/acp_create_checkout_session_buyer.rb +254 -0
  31. data/lib/cybersource_rest_client/models/acp_create_checkout_session_request.rb +217 -0
  32. data/lib/cybersource_rest_client/models/acp_update_checkout_session_buyer.rb +254 -0
  33. data/lib/cybersource_rest_client/models/acp_update_checkout_session_request.rb +224 -0
  34. data/lib/cybersource_rest_client/models/activate_merchant_key_response200.rb +356 -0
  35. data/lib/cybersource_rest_client/models/add_agent_key_response201.rb +356 -0
  36. data/lib/cybersource_rest_client/models/agent_registration_conflict_response409.rb +196 -0
  37. data/lib/cybersource_rest_client/models/agent_registration_response201.rb +356 -0
  38. data/lib/cybersource_rest_client/models/agent_registration_response201_keys.rb +308 -0
  39. data/lib/cybersource_rest_client/models/agent_registration_validation_error_response422.rb +214 -0
  40. data/lib/cybersource_rest_client/models/agent_registration_validation_error_response422_errors.rb +212 -0
  41. data/lib/cybersource_rest_client/models/agent_request.rb +286 -0
  42. data/lib/cybersource_rest_client/models/agent_update.rb +237 -0
  43. data/lib/cybersource_rest_client/models/boardingv1registrations_integration_information_tenant_configurations.rb +1 -1
  44. data/lib/cybersource_rest_client/models/body_1.rb +189 -0
  45. data/lib/cybersource_rest_client/models/body_2.rb +224 -0
  46. data/lib/cybersource_rest_client/models/consumer_authentication_response.rb +196 -0
  47. data/lib/cybersource_rest_client/models/create_payment_link_request.rb +17 -5
  48. data/lib/cybersource_rest_client/models/deactivate_merchant_key_response200.rb +196 -0
  49. data/lib/cybersource_rest_client/models/iccv1agents_keys.rb +239 -0
  50. data/lib/cybersource_rest_client/models/iccv1checkout_sessions_fulfillment_address.rb +344 -0
  51. data/lib/cybersource_rest_client/models/iccv1checkout_sessions_items.rb +222 -0
  52. data/lib/cybersource_rest_client/models/iccv1checkout_sessionssession_id_fulfillment_address.rb +344 -0
  53. data/lib/cybersource_rest_client/models/iccv1checkout_sessionssession_idcomplete_payment_data.rb +222 -0
  54. data/lib/cybersource_rest_client/models/iccv1checkout_sessionssession_idcomplete_payment_data_billing_address.rb +344 -0
  55. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_discounts.rb +206 -0
  56. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_discounts_allocations.rb +202 -0
  57. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_discounts_applied.rb +237 -0
  58. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_fulfillment.rb +193 -0
  59. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_fulfillment_destinations.rb +246 -0
  60. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_fulfillment_groups.rb +228 -0
  61. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_fulfillment_methods.rb +252 -0
  62. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_fulfillment_options.rb +215 -0
  63. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_fulfillment_totals.rb +202 -0
  64. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_item.rb +207 -0
  65. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_line_items.rb +211 -0
  66. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_payment.rb +217 -0
  67. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_payment_billing_address.rb +235 -0
  68. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_payment_credential.rb +202 -0
  69. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_payment_handlers.rb +259 -0
  70. data/lib/cybersource_rest_client/models/iccv1checkoutsessions_payment_instruments.rb +288 -0
  71. data/lib/cybersource_rest_client/models/iccv1checkoutsessionssession_id_discounts.rb +206 -0
  72. data/lib/cybersource_rest_client/models/iccv1checkoutsessionssession_id_fulfillment.rb +193 -0
  73. data/lib/cybersource_rest_client/models/iccv1checkoutsessionssession_id_payment.rb +217 -0
  74. data/lib/cybersource_rest_client/models/iccv1merchants_api_integrations.rb +225 -0
  75. data/lib/cybersource_rest_client/models/iccv1merchants_encryption_key.rb +245 -0
  76. data/lib/cybersource_rest_client/models/iccv1merchants_protocol_interactions.rb +236 -0
  77. data/lib/cybersource_rest_client/models/iccv1merchants_web_integrations.rb +225 -0
  78. data/lib/cybersource_rest_client/models/iccv1productsfeed_products.rb +1368 -0
  79. data/lib/cybersource_rest_client/models/inline_response_200_16.rb +2 -2
  80. data/lib/cybersource_rest_client/models/inline_response_200_17.rb +317 -0
  81. data/lib/cybersource_rest_client/models/inline_response_200_17_fulfillment_address.rb +344 -0
  82. data/lib/cybersource_rest_client/models/inline_response_200_17_order.rb +213 -0
  83. data/lib/cybersource_rest_client/models/inline_response_200_18.rb +308 -0
  84. data/lib/cybersource_rest_client/models/inline_response_200_19.rb +302 -0
  85. data/lib/cybersource_rest_client/models/inline_response_200_19_errors.rb +213 -0
  86. data/lib/cybersource_rest_client/models/inline_response_200_19_google_merchant.rb +237 -0
  87. data/lib/cybersource_rest_client/models/inline_response_200_19_google_merchant_products.rb +259 -0
  88. data/lib/cybersource_rest_client/models/inline_response_200_20.rb +259 -0
  89. data/lib/cybersource_rest_client/models/inline_response_200_20_products.rb +1081 -0
  90. data/lib/cybersource_rest_client/models/inline_response_200_21.rb +201 -0
  91. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +1 -1
  92. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +1 -1
  93. data/lib/cybersource_rest_client/models/inline_response_200_5_integration_information_tenant_configurations.rb +1 -1
  94. data/lib/cybersource_rest_client/models/inline_response_201_10.rb +202 -0
  95. data/lib/cybersource_rest_client/models/inline_response_201_11.rb +297 -0
  96. data/lib/cybersource_rest_client/models/{inline_response_201_9_client_reference_information.rb → inline_response_201_11_client_reference_information.rb} +1 -1
  97. data/lib/cybersource_rest_client/models/{inline_response_201_9_error_information.rb → inline_response_201_11_error_information.rb} +1 -1
  98. data/lib/cybersource_rest_client/models/{inline_response_201_9_order_information.rb → inline_response_201_11_order_information.rb} +2 -2
  99. data/lib/cybersource_rest_client/models/{inline_response_201_9_order_information_currency_conversion.rb → inline_response_201_11_order_information_currency_conversion.rb} +2 -2
  100. data/lib/cybersource_rest_client/models/{inline_response_201_9_order_information_currency_conversion_offer.rb → inline_response_201_11_order_information_currency_conversion_offer.rb} +1 -1
  101. data/lib/cybersource_rest_client/models/{inline_response_201_9_processor_information.rb → inline_response_201_11_processor_information.rb} +1 -1
  102. data/lib/cybersource_rest_client/models/inline_response_201_12.rb +318 -0
  103. data/lib/cybersource_rest_client/models/inline_response_201_12_fulfillment_address.rb +344 -0
  104. data/lib/cybersource_rest_client/models/inline_response_201_12_fulfillment_options.rb +290 -0
  105. data/lib/cybersource_rest_client/models/inline_response_201_12_item.rb +213 -0
  106. data/lib/cybersource_rest_client/models/inline_response_201_12_line_items.rb +256 -0
  107. data/lib/cybersource_rest_client/models/inline_response_201_12_links.rb +212 -0
  108. data/lib/cybersource_rest_client/models/inline_response_201_12_messages.rb +250 -0
  109. data/lib/cybersource_rest_client/models/inline_response_201_12_payment_provider.rb +204 -0
  110. data/lib/cybersource_rest_client/models/inline_response_201_12_totals.rb +213 -0
  111. data/lib/cybersource_rest_client/models/inline_response_201_13.rb +312 -0
  112. data/lib/cybersource_rest_client/models/inline_response_201_13_discounts.rb +206 -0
  113. data/lib/cybersource_rest_client/models/inline_response_201_13_fulfillment.rb +193 -0
  114. data/lib/cybersource_rest_client/models/inline_response_201_13_item.rb +213 -0
  115. data/lib/cybersource_rest_client/models/inline_response_201_13_line_items.rb +225 -0
  116. data/lib/cybersource_rest_client/models/inline_response_201_13_order.rb +202 -0
  117. data/lib/cybersource_rest_client/models/inline_response_201_13_payment.rb +217 -0
  118. data/lib/cybersource_rest_client/models/inline_response_201_13_ucp.rb +204 -0
  119. data/lib/cybersource_rest_client/models/inline_response_201_13_ucp_capabilities.rb +202 -0
  120. data/lib/cybersource_rest_client/models/inline_response_201_3.rb +57 -35
  121. data/lib/cybersource_rest_client/models/inline_response_201_3_error_information.rb +225 -0
  122. data/lib/cybersource_rest_client/models/inline_response_201_3_error_information_details.rb +213 -0
  123. data/lib/cybersource_rest_client/models/inline_response_201_3_order_information.rb +189 -0
  124. data/lib/cybersource_rest_client/models/inline_response_201_3_order_information_amount_details.rb +315 -0
  125. data/lib/cybersource_rest_client/models/inline_response_201_3_processing_information.rb +189 -0
  126. data/lib/cybersource_rest_client/models/inline_response_201_3_processing_information_routing.rb +196 -0
  127. data/lib/cybersource_rest_client/models/inline_response_201_3_processor_information.rb +213 -0
  128. data/lib/cybersource_rest_client/models/inline_response_201_4.rb +61 -61
  129. data/lib/cybersource_rest_client/models/{inline_response_401_1__links.rb → inline_response_201_4__links.rb} +2 -2
  130. data/lib/cybersource_rest_client/models/inline_response_201_4__links_self.rb +201 -0
  131. data/lib/cybersource_rest_client/models/inline_response_201_4_acquirer_information.rb +196 -0
  132. data/lib/cybersource_rest_client/models/inline_response_201_4_client_reference_information.rb +196 -0
  133. data/lib/cybersource_rest_client/models/inline_response_201_4_error_information.rb +225 -0
  134. data/lib/cybersource_rest_client/models/inline_response_201_4_error_information_details.rb +213 -0
  135. data/lib/cybersource_rest_client/models/inline_response_201_4_merchant_information.rb +196 -0
  136. data/lib/cybersource_rest_client/models/inline_response_201_4_order_information.rb +189 -0
  137. data/lib/cybersource_rest_client/models/inline_response_201_4_order_information_amount_details.rb +264 -0
  138. data/lib/cybersource_rest_client/models/inline_response_201_4_payment_information.rb +223 -0
  139. data/lib/cybersource_rest_client/models/inline_response_201_4_payment_information_card.rb +213 -0
  140. data/lib/cybersource_rest_client/models/inline_response_201_4_processing_information.rb +240 -0
  141. data/lib/cybersource_rest_client/models/inline_response_201_4_processing_information_payouts_options.rb +196 -0
  142. data/lib/cybersource_rest_client/models/inline_response_201_4_processor_information.rb +548 -0
  143. data/lib/cybersource_rest_client/models/inline_response_201_4_processor_information_card_verification.rb +196 -0
  144. data/lib/cybersource_rest_client/models/inline_response_201_4_transactions.rb +239 -0
  145. data/lib/cybersource_rest_client/models/inline_response_201_5.rb +44 -18
  146. data/lib/cybersource_rest_client/models/{inline_response_201_3_payout_information.rb → inline_response_201_5_payout_information.rb} +3 -3
  147. data/lib/cybersource_rest_client/models/{inline_response_201_3_payout_information_pull_funds.rb → inline_response_201_5_payout_information_pull_funds.rb} +1 -1
  148. data/lib/cybersource_rest_client/models/{inline_response_201_3_payout_information_push_funds.rb → inline_response_201_5_payout_information_push_funds.rb} +1 -1
  149. data/lib/cybersource_rest_client/models/inline_response_201_6.rb +69 -102
  150. data/lib/cybersource_rest_client/models/{inline_response_201_4_integration_information.rb → inline_response_201_6_integration_information.rb} +2 -2
  151. data/lib/cybersource_rest_client/models/{inline_response_201_4_integration_information_tenant_configurations.rb → inline_response_201_6_integration_information_tenant_configurations.rb} +1 -1
  152. data/lib/cybersource_rest_client/models/{inline_response_201_4_organization_information.rb → inline_response_201_6_organization_information.rb} +1 -1
  153. data/lib/cybersource_rest_client/models/{inline_response_201_4_product_information_setups.rb → inline_response_201_6_product_information_setups.rb} +2 -2
  154. data/lib/cybersource_rest_client/models/{inline_response_201_4_registration_information.rb → inline_response_201_6_registration_information.rb} +1 -1
  155. data/lib/cybersource_rest_client/models/{inline_response_201_4_setups.rb → inline_response_201_6_setups.rb} +4 -4
  156. data/lib/cybersource_rest_client/models/{inline_response_201_4_setups_commerce_solutions.rb → inline_response_201_6_setups_commerce_solutions.rb} +1 -1
  157. data/lib/cybersource_rest_client/models/{inline_response_201_4_setups_risk.rb → inline_response_201_6_setups_risk.rb} +1 -1
  158. data/lib/cybersource_rest_client/models/{inline_response_201_4_setups_value_added_services.rb → inline_response_201_6_setups_value_added_services.rb} +1 -1
  159. data/lib/cybersource_rest_client/models/inline_response_201_7.rb +32 -87
  160. data/lib/cybersource_rest_client/models/{inline_response_201_5_key_information.rb → inline_response_201_7_key_information.rb} +2 -2
  161. data/lib/cybersource_rest_client/models/{inline_response_201_5_key_information_error_information.rb → inline_response_201_7_key_information_error_information.rb} +2 -2
  162. data/lib/cybersource_rest_client/models/{inline_response_201_5_key_information_error_information_details.rb → inline_response_201_7_key_information_error_information_details.rb} +1 -1
  163. data/lib/cybersource_rest_client/models/inline_response_201_8.rb +127 -15
  164. data/lib/cybersource_rest_client/models/inline_response_201_9.rb +78 -98
  165. data/lib/cybersource_rest_client/models/{inline_response_201_7_payloads.rb → inline_response_201_9_payloads.rb} +2 -2
  166. data/lib/cybersource_rest_client/models/{inline_response_201_7_payloads_test_payload.rb → inline_response_201_9_payloads_test_payload.rb} +1 -1
  167. data/lib/cybersource_rest_client/models/inline_response_202__links.rb +1 -1
  168. data/lib/cybersource_rest_client/models/inline_response_400_10.rb +58 -36
  169. data/lib/cybersource_rest_client/models/{inline_response_400_8_fields.rb → inline_response_400_10_fields.rb} +1 -1
  170. data/lib/cybersource_rest_client/models/inline_response_400_11.rb +35 -42
  171. data/lib/cybersource_rest_client/models/{inline_response_400_9_details.rb → inline_response_400_11_details.rb} +1 -1
  172. data/lib/cybersource_rest_client/models/inline_response_400_12.rb +27 -26
  173. data/lib/cybersource_rest_client/models/inline_response_400_12_details.rb +18 -7
  174. data/lib/cybersource_rest_client/models/inline_response_400_13.rb +38 -77
  175. data/lib/cybersource_rest_client/models/inline_response_400_14.rb +235 -0
  176. data/lib/cybersource_rest_client/models/{inline_response_400_10_details.rb → inline_response_400_14_details.rb} +8 -19
  177. data/lib/cybersource_rest_client/models/inline_response_400_15.rb +281 -0
  178. data/lib/cybersource_rest_client/models/inline_response_400_16.rb +235 -0
  179. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +42 -13
  180. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +47 -13
  181. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +1 -1
  182. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +1 -1
  183. data/lib/cybersource_rest_client/models/inline_response_400_7.rb +1 -1
  184. data/lib/cybersource_rest_client/models/inline_response_400_8.rb +37 -60
  185. data/lib/cybersource_rest_client/models/inline_response_400_9.rb +6 -6
  186. data/lib/cybersource_rest_client/models/inline_response_401.rb +51 -33
  187. data/lib/cybersource_rest_client/models/inline_response_401_1.rb +44 -56
  188. data/lib/cybersource_rest_client/models/inline_response_401_2.rb +223 -0
  189. data/lib/cybersource_rest_client/models/inline_response_401_3.rb +253 -0
  190. data/lib/cybersource_rest_client/models/inline_response_401_3__links.rb +189 -0
  191. data/lib/cybersource_rest_client/models/{inline_response_401_1__links_self.rb → inline_response_401_3__links_self.rb} +1 -1
  192. data/lib/cybersource_rest_client/models/{inline_response_401_1_fields.rb → inline_response_401_3_fields.rb} +1 -1
  193. data/lib/cybersource_rest_client/models/inline_response_404_3.rb +1 -1
  194. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +1 -1
  195. data/lib/cybersource_rest_client/models/inline_response_502_2.rb +55 -26
  196. data/lib/cybersource_rest_client/models/inline_response_502_3.rb +21 -15
  197. data/lib/cybersource_rest_client/models/inline_response_502_4.rb +223 -0
  198. data/lib/cybersource_rest_client/models/inline_response_502_5.rb +251 -0
  199. data/lib/cybersource_rest_client/models/invoicing_v2_invoice_settings_get200_response_invoice_settings_information.rb +18 -1
  200. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoice_information.rb +2 -2
  201. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_cancel200_response.rb +17 -5
  202. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_invoice_information.rb +20 -3
  203. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_merchant_defined_field_values_with_definition.rb +11 -1
  204. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_publish200_response.rb +17 -5
  205. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_send200_response.rb +17 -5
  206. data/lib/cybersource_rest_client/models/invoicingv2invoice_settings_invoice_settings_information.rb +18 -1
  207. data/lib/cybersource_rest_client/models/invoicingv2invoices_invoice_information.rb +20 -3
  208. data/lib/cybersource_rest_client/models/invoicingv2invoicesid_invoice_information.rb +20 -3
  209. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information_line_items.rb +26 -9
  210. data/lib/cybersource_rest_client/models/iplv2paymentlinks_purchase_information.rb +85 -5
  211. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_purchase_information.rb +85 -5
  212. data/lib/cybersource_rest_client/models/key_request.rb +239 -0
  213. data/lib/cybersource_rest_client/models/key_request_1.rb +245 -0
  214. data/lib/cybersource_rest_client/models/key_update.rb +224 -0
  215. data/lib/cybersource_rest_client/models/key_update_1.rb +235 -0
  216. data/lib/cybersource_rest_client/models/list_agent_keys_response200.rb +245 -0
  217. data/lib/cybersource_rest_client/models/list_agent_keys_response200_pagination.rb +276 -0
  218. data/lib/cybersource_rest_client/models/list_merchant_keys_response200.rb +262 -0
  219. data/lib/cybersource_rest_client/models/merchant_defined_field_core_1.rb +315 -0
  220. data/lib/cybersource_rest_client/models/merchant_defined_field_definition_request_1.rb +315 -0
  221. data/lib/cybersource_rest_client/models/merchant_registration_response201.rb +395 -0
  222. data/lib/cybersource_rest_client/models/merchant_registration_response201_keys.rb +324 -0
  223. data/lib/cybersource_rest_client/models/merchant_registration_validation_error_response422.rb +193 -0
  224. data/lib/cybersource_rest_client/models/merchant_registration_validation_error_response422_detail.rb +215 -0
  225. data/lib/cybersource_rest_client/models/merchant_request.rb +317 -0
  226. data/lib/cybersource_rest_client/models/merchant_update.rb +270 -0
  227. data/lib/cybersource_rest_client/models/patch_registration_body.rb +234 -0
  228. data/lib/cybersource_rest_client/models/pbl_payment_links_get200_response.rb +17 -5
  229. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response.rb +17 -5
  230. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response_purchase_information.rb +81 -1
  231. data/lib/cybersource_rest_client/models/{tms_tokenized_card_delete_request.rb → post_tokenized_card_delete_request.rb} +1 -1
  232. data/lib/cybersource_rest_client/models/processing_info_authorization_options.rb +14 -1
  233. data/lib/cybersource_rest_client/models/product_feed_request.rb +230 -0
  234. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +1 -1
  235. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +37 -3
  236. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +11 -1
  237. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_card_verification.rb +214 -0
  238. data/lib/cybersource_rest_client/models/ptsv2payments_recurring_payment_information.rb +0 -14
  239. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +1 -1
  240. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +1 -1
  241. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_acquirer_information.rb +196 -0
  242. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_client_reference_information.rb +257 -0
  243. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_client_reference_information_partner.rb +213 -0
  244. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_order_information.rb +189 -0
  245. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_order_information_amount_details.rb +299 -0
  246. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_processing_information.rb +240 -0
  247. data/lib/cybersource_rest_client/models/ptsv2payoutsfxrates_processing_information_routing.rb +205 -0
  248. data/lib/cybersource_rest_client/models/ptsv2payoutstransactionqueryid_client_reference_information.rb +247 -0
  249. data/lib/cybersource_rest_client/models/{boardingv1registrations_integration_information_tenant_information.rb → tenant_information.rb} +1 -1
  250. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +1 -1
  251. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +12 -1
  252. data/lib/cybersource_rest_client/models/ucp_checkout_session_response_buyer.rb +202 -0
  253. data/lib/cybersource_rest_client/models/ucp_complete_checkout_request.rb +201 -0
  254. data/lib/cybersource_rest_client/models/ucp_create_checkout_session_buyer.rb +202 -0
  255. data/lib/cybersource_rest_client/models/ucp_create_checkout_session_request.rb +249 -0
  256. data/lib/cybersource_rest_client/models/ucp_update_checkout_session_buyer.rb +202 -0
  257. data/lib/cybersource_rest_client/models/ucp_update_checkout_session_request.rb +255 -0
  258. data/lib/cybersource_rest_client/models/ucv1sessions_complete_mandate.rb +16 -5
  259. data/lib/cybersource_rest_client/models/ucv1sessions_data.rb +11 -1
  260. data/lib/cybersource_rest_client/models/ucv1sessions_data_acquirer_information.rb +196 -0
  261. data/lib/cybersource_rest_client/models/ucv1sessions_data_aggregator_information.rb +1 -1
  262. data/lib/cybersource_rest_client/models/ucv1sessions_data_consumer_authentication_information.rb +16 -5
  263. data/lib/cybersource_rest_client/models/unified_risk_post201_response.rb +211 -0
  264. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results.rb +190 -0
  265. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights.rb +291 -0
  266. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_client.rb +208 -0
  267. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_error.rb +202 -0
  268. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_packages.rb +190 -0
  269. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_packages_transaction_insights.rb +250 -0
  270. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_packages_transaction_insights_insights.rb +219 -0
  271. data/lib/cybersource_rest_client/models/unified_risk_post201_response_transaction_insights_insights_warnings.rb +214 -0
  272. data/lib/cybersource_rest_client/models/unified_risk_post400_response.rb +230 -0
  273. data/lib/cybersource_rest_client/models/unified_risk_post400_response_errors.rb +223 -0
  274. data/lib/cybersource_rest_client/models/unifiedrisk_account.rb +190 -0
  275. data/lib/cybersource_rest_client/models/unifiedrisk_acquirer.rb +302 -0
  276. data/lib/cybersource_rest_client/models/unifiedrisk_acquirer_merchant_account.rb +234 -0
  277. data/lib/cybersource_rest_client/models/unifiedrisk_acquirer_merchant_account_security_amount.rb +246 -0
  278. data/lib/cybersource_rest_client/models/unifiedrisk_authentication.rb +402 -0
  279. data/lib/cybersource_rest_client/models/unifiedrisk_authentication_challenge.rb +202 -0
  280. data/lib/cybersource_rest_client/models/unifiedrisk_authorization.rb +212 -0
  281. data/lib/cybersource_rest_client/models/unifiedrisk_browser.rb +420 -0
  282. data/lib/cybersource_rest_client/models/unifiedrisk_customer.rb +403 -0
  283. data/lib/cybersource_rest_client/models/unifiedrisk_customer_address.rb +279 -0
  284. data/lib/cybersource_rest_client/models/unifiedrisk_customer_personal_identification.rb +297 -0
  285. data/lib/cybersource_rest_client/models/unifiedrisk_device.rb +681 -0
  286. data/lib/cybersource_rest_client/models/unifiedrisk_device_point_of_sale.rb +344 -0
  287. data/lib/cybersource_rest_client/models/unifiedrisk_initiating_party.rb +223 -0
  288. data/lib/cybersource_rest_client/models/unifiedrisk_labels.rb +230 -0
  289. data/lib/cybersource_rest_client/models/unifiedrisk_labels_authentication_outcome.rb +201 -0
  290. data/lib/cybersource_rest_client/models/unifiedrisk_labels_payment_authorization_decision.rb +201 -0
  291. data/lib/cybersource_rest_client/models/unifiedrisk_labels_return.rb +202 -0
  292. data/lib/cybersource_rest_client/models/unifiedrisk_labels_transaction_decision.rb +201 -0
  293. data/lib/cybersource_rest_client/models/unifiedrisk_labels_transaction_outcome.rb +201 -0
  294. data/lib/cybersource_rest_client/models/unifiedrisk_merchant.rb +326 -0
  295. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_address.rb +328 -0
  296. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor.rb +389 -0
  297. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_expected_annual_sales.rb +268 -0
  298. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_expected_average_ticket_size.rb +246 -0
  299. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_expected_monthly_sales.rb +268 -0
  300. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_hierarchy.rb +224 -0
  301. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_limit_value.rb +257 -0
  302. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_trading_address.rb +301 -0
  303. data/lib/cybersource_rest_client/models/unifiedrisk_order.rb +256 -0
  304. data/lib/cybersource_rest_client/models/unifiedrisk_order_billing.rb +360 -0
  305. data/lib/cybersource_rest_client/models/unifiedrisk_order_line_items.rb +262 -0
  306. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping.rb +464 -0
  307. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping_store.rb +251 -0
  308. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping_store_address.rb +191 -0
  309. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping_store_store_address.rb +235 -0
  310. data/lib/cybersource_rest_client/models/unifiedrisk_partner.rb +214 -0
  311. data/lib/cybersource_rest_client/models/unifiedrisk_payment.rb +423 -0
  312. data/lib/cybersource_rest_client/models/unifiedrisk_payment_approvals.rb +193 -0
  313. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account.rb +451 -0
  314. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_balance_before.rb +257 -0
  315. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_branch_address.rb +328 -0
  316. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_credit_limit.rb +257 -0
  317. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_financial_institution.rb +212 -0
  318. data/lib/cybersource_rest_client/models/unifiedrisk_payment_batch.rb +323 -0
  319. data/lib/cybersource_rest_client/models/unifiedrisk_payment_card.rb +461 -0
  320. data/lib/cybersource_rest_client/models/unifiedrisk_payment_card_par_details.rb +196 -0
  321. data/lib/cybersource_rest_client/models/unifiedrisk_payment_card_token_details.rb +380 -0
  322. data/lib/cybersource_rest_client/models/unifiedrisk_payment_check.rb +289 -0
  323. data/lib/cybersource_rest_client/models/unifiedrisk_payment_check_deposit_location.rb +279 -0
  324. data/lib/cybersource_rest_client/models/unifiedrisk_payment_counterparty.rb +287 -0
  325. data/lib/cybersource_rest_client/models/unifiedrisk_payment_counterparty_address.rb +279 -0
  326. data/lib/cybersource_rest_client/models/unifiedrisk_payment_counterparty_branch_address.rb +279 -0
  327. data/lib/cybersource_rest_client/models/unifiedrisk_payment_sdk.rb +268 -0
  328. data/lib/cybersource_rest_client/models/unifiedrisk_payment_token.rb +213 -0
  329. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification.rb +230 -0
  330. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_additional.rb +256 -0
  331. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_authentication.rb +232 -0
  332. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_authentication_pin.rb +201 -0
  333. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_authentication_three_ds.rb +190 -0
  334. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_card_security.rb +199 -0
  335. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_card_security_avs.rb +218 -0
  336. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_card_security_cvv.rb +196 -0
  337. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_digital.rb +212 -0
  338. data/lib/cybersource_rest_client/models/unifiedrisk_payment_wallet.rb +201 -0
  339. data/lib/cybersource_rest_client/models/unifiedrisk_payment_wire.rb +364 -0
  340. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment.rb +308 -0
  341. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history.rb +276 -0
  342. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history_account_history.rb +207 -0
  343. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history_customer_account.rb +273 -0
  344. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history_customer_account_alertnate_authentication.rb +257 -0
  345. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_vital4.rb +191 -0
  346. data/lib/cybersource_rest_client/models/unifiedrisk_session.rb +202 -0
  347. data/lib/cybersource_rest_client/models/unifiedrisk_terminal.rb +238 -0
  348. data/lib/cybersource_rest_client/models/unifiedrisk_terminal_address.rb +301 -0
  349. data/lib/cybersource_rest_client/models/unifiedrisk_terminal_capabilities.rb +234 -0
  350. data/lib/cybersource_rest_client/models/unifiedrisk_third_party_risk.rb +708 -0
  351. data/lib/cybersource_rest_client/models/unifiedrisk_third_party_risk_raw_data.rb +189 -0
  352. data/lib/cybersource_rest_client/models/unifiedrisk_transaction.rb +489 -0
  353. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_additional_fees.rb +257 -0
  354. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_amount.rb +257 -0
  355. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details.rb +220 -0
  356. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_batch_credits_amount.rb +246 -0
  357. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_batch_debits_amount.rb +246 -0
  358. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_file_credits.rb +246 -0
  359. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_file_debits.rb +246 -0
  360. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_check_details.rb +190 -0
  361. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_check_details_deposited_cash_amount.rb +246 -0
  362. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_recurring_details.rb +341 -0
  363. data/lib/cybersource_rest_client/models/unifiedrisk_travel.rb +279 -0
  364. data/lib/cybersource_rest_client/models/update_payment_link_request.rb +17 -5
  365. data/lib/cybersource_rest_client/models/vpri_request.rb +505 -0
  366. data/lib/cybersource_rest_client/models/vpri_transaction_insights_additional_data.rb +190 -0
  367. data/lib/cybersource_rest_client/models/vpri_transaction_insights_additional_data_card_bin_data.rb +357 -0
  368. data/lib/cybersource_rest_client.rb +2264 -2011
  369. metadata +286 -33
@@ -0,0 +1,1368 @@
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ # A single product to add to or update in the merchant's ACG catalog.
16
+ class Iccv1productsfeedProducts
17
+ # Your unique product identifier (SKU). Must be unique within your merchant catalog. Max 100 characters.
18
+ attr_accessor :item_id
19
+
20
+ # Product display name. Max 150 characters.
21
+ attr_accessor :title
22
+
23
+ # Detailed product description. Max 5000 characters.
24
+ attr_accessor :description
25
+
26
+ # Canonical URL to the product page on your storefront. Max 1000 characters.
27
+ attr_accessor :url
28
+
29
+ # URL to the primary product image. Must be publicly accessible (HTTPS). Max 1000 characters.
30
+ attr_accessor :image_url
31
+
32
+ # Optional. Additional product image URLs (comma-separated or single URL). Must be HTTPS.
33
+ attr_accessor :additional_image_urls
34
+
35
+ # Optional. URL to a product video. Must be HTTPS and publicly accessible.
36
+ attr_accessor :video_url
37
+
38
+ # Optional. URL to a 3D model asset for the product (GLTF/GLB format preferred).
39
+ attr_accessor :model_3d_url
40
+
41
+ # Current stock status: - `in_stock` — available for immediate purchase - `out_of_stock` — temporarily unavailable - `preorder` or `pre_order` — not yet released - `backorder` — out of stock but accepting orders - `unknown` — availability status is not determined Possible values: - in_stock - out_of_stock - preorder - pre_order - backorder - unknown
42
+ attr_accessor :availability
43
+
44
+ # Optional. Date when the product becomes available (for preorder/backorder).
45
+ attr_accessor :availability_date
46
+
47
+ # Optional. Date after which the product listing expires.
48
+ attr_accessor :expiration_date
49
+
50
+ # Product price as a positive decimal number. Pair with `currency` for full price representation. Must be greater than zero.
51
+ attr_accessor :price
52
+
53
+ # 3-letter ISO 4217 currency code for the product price (e.g. \"USD\", \"EUR\", \"GBP\").
54
+ attr_accessor :currency
55
+
56
+ # Optional. Discounted sale price. Only shown when lower than `price`.
57
+ attr_accessor :sale_price
58
+
59
+ # Optional. Start date of the sale price window.
60
+ attr_accessor :sale_price_start_date
61
+
62
+ # Optional. End date of the sale price window.
63
+ attr_accessor :sale_price_end_date
64
+
65
+ # Optional. Unit measure for unit-priced items (e.g. \"1kg\", \"750ml\"). Used for per-unit price display.
66
+ attr_accessor :unit_pricing_measure
67
+
68
+ # Optional. Base measure used for unit pricing comparison (e.g. \"100g\", \"1L\"). Enables price-per-unit comparison.
69
+ attr_accessor :base_measure
70
+
71
+ # Optional. Pricing trend indicator (e.g. \"dropping\", \"rising\"). Max 80 characters.
72
+ attr_accessor :pricing_trend
73
+
74
+ # Optional. Geography-specific pricing overrides (JSON or structured string).
75
+ attr_accessor :geo_price
76
+
77
+ # Optional. Geography-specific availability overrides (JSON or structured string).
78
+ attr_accessor :geo_availability
79
+
80
+ # Product brand or manufacturer name. Max 70 characters.
81
+ attr_accessor :brand
82
+
83
+ # Optional. Global Trade Item Number (UPC, EAN, ISBN). Must be 8–14 digits. Required for Google Merchant Center syndication.
84
+ attr_accessor :gtin
85
+
86
+ # Optional. Manufacturer Part Number. Max 70 characters.
87
+ attr_accessor :mpn
88
+
89
+ # Optional. Product category hierarchy. Used for UCP validation and Google Merchant Center syndication. Max 255 characters.
90
+ attr_accessor :product_category
91
+
92
+ # Optional. Product condition. Typical values: `new`, `used`, `refurbished`. Used for UCP syndication and Google Merchant Center feed.
93
+ attr_accessor :condition
94
+
95
+ # Optional. Primary material of the product. Max 100 characters.
96
+ attr_accessor :material
97
+
98
+ # Optional. Product weight (e.g. \"1.2kg\"). Max 100 characters.
99
+ attr_accessor :weight
100
+
101
+ # Optional. Combined dimension string (e.g. \"10x5x3 cm\"). Max 100 characters.
102
+ attr_accessor :dimensions
103
+
104
+ # Optional. Product length.
105
+ attr_accessor :length
106
+
107
+ # Optional. Product width.
108
+ attr_accessor :width
109
+
110
+ # Optional. Product height.
111
+ attr_accessor :height
112
+
113
+ # Optional. Unit for dimension values (e.g. \"cm\", \"in\").
114
+ attr_accessor :dimensions_unit
115
+
116
+ # Optional. Unit for weight value (e.g. \"kg\", \"lb\").
117
+ attr_accessor :item_weight_unit
118
+
119
+ # Optional. Target age group (e.g. \"adult\", \"kids\", \"infant\", \"toddler\", \"newborn\").
120
+ attr_accessor :age_group
121
+
122
+ # Optional. Product color. Max 40 characters.
123
+ attr_accessor :color
124
+
125
+ # Optional. Product size (e.g. \"M\", \"42\", \"XL\"). Max 20 characters. Used for variant filtering.
126
+ attr_accessor :size
127
+
128
+ # Optional. Size standard used (e.g. \"US\", \"EU\", \"UK\", \"AU\").
129
+ attr_accessor :size_system
130
+
131
+ # Optional. Target gender (e.g. \"male\", \"female\", \"unisex\").
132
+ attr_accessor :gender
133
+
134
+ # Product variant group ID — links products that are variations of the same item. Max 70 characters.
135
+ attr_accessor :group_id
136
+
137
+ # Whether this listing has product variations.
138
+ attr_accessor :listing_has_variations
139
+
140
+ # Optional. Display title for the variant group. Max 150 characters.
141
+ attr_accessor :item_group_title
142
+
143
+ # Optional. Merchant-assigned offer identifier for marketplace deduplication.
144
+ attr_accessor :offer_id
145
+
146
+ # Optional. Key-value map of variant attribute names to values (e.g. color, size).
147
+ attr_accessor :variant_dict
148
+
149
+ # Optional. Custom variant 1 category label.
150
+ attr_accessor :custom_variant1_category
151
+
152
+ # Optional. Custom variant 1 option value.
153
+ attr_accessor :custom_variant1_option
154
+
155
+ # Optional. Custom variant 2 category label.
156
+ attr_accessor :custom_variant2_category
157
+
158
+ # Optional. Custom variant 2 option value.
159
+ attr_accessor :custom_variant2_option
160
+
161
+ # Optional. Custom variant 3 category label.
162
+ attr_accessor :custom_variant3_category
163
+
164
+ # Optional. Custom variant 3 option value.
165
+ attr_accessor :custom_variant3_option
166
+
167
+ # Merchant or seller display name. Max 70 characters.
168
+ attr_accessor :seller_name
169
+
170
+ # URL to the seller's storefront. Max 1000 characters.
171
+ attr_accessor :seller_url
172
+
173
+ # Optional. Marketplace seller identifier for multi-seller platforms. Max 70 characters.
174
+ attr_accessor :marketplace_seller
175
+
176
+ # Optional. URL to the seller's privacy policy page.
177
+ attr_accessor :seller_privacy_policy
178
+
179
+ # Optional. URL to the seller's terms of service page.
180
+ attr_accessor :seller_tos
181
+
182
+ # Optional. Shipping price for this product (e.g. \"5.99 USD\" or \"Free\").
183
+ attr_accessor :shipping_price
184
+
185
+ # Optional. Estimated delivery date.
186
+ attr_accessor :delivery_estimate
187
+
188
+ # Optional. Available pickup method (e.g. \"in-store\", \"curbside\", \"locker\").
189
+ attr_accessor :pickup_method
190
+
191
+ # Optional. Pickup SLA commitment (e.g. \"same-day\", \"2 hours\", \"next-day\").
192
+ attr_accessor :pickup_sla
193
+
194
+ # Optional. Whether this product is a digital/downloadable item.
195
+ attr_accessor :is_digital
196
+
197
+ # Human-readable return policy description.
198
+ attr_accessor :return_policy
199
+
200
+ # Optional. Whether the product is eligible for returns.
201
+ attr_accessor :accepts_returns
202
+
203
+ # Optional. Number of days within which a return is accepted. Must be a positive integer.
204
+ attr_accessor :return_deadline_in_days
205
+
206
+ # Optional. Whether the product is eligible for exchanges.
207
+ attr_accessor :accepts_exchanges
208
+
209
+ # Controls whether this product appears in AI agent product discovery and search results.
210
+ attr_accessor :is_eligible_search
211
+
212
+ # Controls whether this product can be added to cart and purchased via AI agents.
213
+ attr_accessor :is_eligible_checkout
214
+
215
+ # Optional. Numeric popularity score (higher is more popular).
216
+ attr_accessor :popularity_score
217
+
218
+ # Optional. Product return rate indicator (e.g. \"low\", \"medium\", \"high\", or \"5%\").
219
+ attr_accessor :return_rate
220
+
221
+ # Optional. Safety or compliance warning text for the product (e.g. Prop 65, choking hazard).
222
+ attr_accessor :warning
223
+
224
+ # Optional. URL to a detailed warning or compliance information page.
225
+ attr_accessor :warning_url
226
+
227
+ # Optional. Minimum age required to purchase this product (e.g. 18).
228
+ attr_accessor :age_restriction
229
+
230
+ # Optional. Total number of customer reviews for this product.
231
+ attr_accessor :review_count
232
+
233
+ # Optional. Average star rating for this product (e.g. \"4.5\").
234
+ attr_accessor :star_rating
235
+
236
+ # Optional. Total number of store-level reviews.
237
+ attr_accessor :store_review_count
238
+
239
+ # Optional. Average star rating for the store (e.g. \"4.8\").
240
+ attr_accessor :store_star_rating
241
+
242
+ # Optional. Item ID of a related product (e.g. accessory, replacement).
243
+ attr_accessor :related_product_id
244
+
245
+ # Optional. Type of relationship to `related_product_id` (e.g. \"accessory\", \"replacement\", \"bundle\").
246
+ attr_accessor :relationship_type
247
+
248
+ # List of ISO 3166-1 alpha-3 country codes where this product is available.
249
+ attr_accessor :target_countries
250
+
251
+ # ISO 3166-1 alpha-2 country code of the merchant's store. Max 2 characters.
252
+ attr_accessor :store_country
253
+
254
+ # Optional. List of Q&A entries for this product.
255
+ attr_accessor :q_and_a
256
+
257
+ # Optional. Alias for `q_and_a`. Included for compatibility with alternate field naming conventions.
258
+ attr_accessor :qand_a
259
+
260
+ # Optional. List of customer review objects for this product.
261
+ attr_accessor :reviews
262
+
263
+ # Attribute mapping from ruby-style variable name to JSON key.
264
+ def self.attribute_map
265
+ {
266
+ :'item_id' => :'item_id',
267
+ :'title' => :'title',
268
+ :'description' => :'description',
269
+ :'url' => :'url',
270
+ :'image_url' => :'image_url',
271
+ :'additional_image_urls' => :'additional_image_urls',
272
+ :'video_url' => :'video_url',
273
+ :'model_3d_url' => :'model_3d_url',
274
+ :'availability' => :'availability',
275
+ :'availability_date' => :'availability_date',
276
+ :'expiration_date' => :'expiration_date',
277
+ :'price' => :'price',
278
+ :'currency' => :'currency',
279
+ :'sale_price' => :'sale_price',
280
+ :'sale_price_start_date' => :'sale_price_start_date',
281
+ :'sale_price_end_date' => :'sale_price_end_date',
282
+ :'unit_pricing_measure' => :'unit_pricing_measure',
283
+ :'base_measure' => :'base_measure',
284
+ :'pricing_trend' => :'pricing_trend',
285
+ :'geo_price' => :'geo_price',
286
+ :'geo_availability' => :'geo_availability',
287
+ :'brand' => :'brand',
288
+ :'gtin' => :'gtin',
289
+ :'mpn' => :'mpn',
290
+ :'product_category' => :'product_category',
291
+ :'condition' => :'condition',
292
+ :'material' => :'material',
293
+ :'weight' => :'weight',
294
+ :'dimensions' => :'dimensions',
295
+ :'length' => :'length',
296
+ :'width' => :'width',
297
+ :'height' => :'height',
298
+ :'dimensions_unit' => :'dimensions_unit',
299
+ :'item_weight_unit' => :'item_weight_unit',
300
+ :'age_group' => :'age_group',
301
+ :'color' => :'color',
302
+ :'size' => :'size',
303
+ :'size_system' => :'size_system',
304
+ :'gender' => :'gender',
305
+ :'group_id' => :'group_id',
306
+ :'listing_has_variations' => :'listing_has_variations',
307
+ :'item_group_title' => :'item_group_title',
308
+ :'offer_id' => :'offer_id',
309
+ :'variant_dict' => :'variant_dict',
310
+ :'custom_variant1_category' => :'custom_variant1_category',
311
+ :'custom_variant1_option' => :'custom_variant1_option',
312
+ :'custom_variant2_category' => :'custom_variant2_category',
313
+ :'custom_variant2_option' => :'custom_variant2_option',
314
+ :'custom_variant3_category' => :'custom_variant3_category',
315
+ :'custom_variant3_option' => :'custom_variant3_option',
316
+ :'seller_name' => :'seller_name',
317
+ :'seller_url' => :'seller_url',
318
+ :'marketplace_seller' => :'marketplace_seller',
319
+ :'seller_privacy_policy' => :'seller_privacy_policy',
320
+ :'seller_tos' => :'seller_tos',
321
+ :'shipping_price' => :'shipping_price',
322
+ :'delivery_estimate' => :'delivery_estimate',
323
+ :'pickup_method' => :'pickup_method',
324
+ :'pickup_sla' => :'pickup_sla',
325
+ :'is_digital' => :'is_digital',
326
+ :'return_policy' => :'return_policy',
327
+ :'accepts_returns' => :'accepts_returns',
328
+ :'return_deadline_in_days' => :'return_deadline_in_days',
329
+ :'accepts_exchanges' => :'accepts_exchanges',
330
+ :'is_eligible_search' => :'is_eligible_search',
331
+ :'is_eligible_checkout' => :'is_eligible_checkout',
332
+ :'popularity_score' => :'popularity_score',
333
+ :'return_rate' => :'return_rate',
334
+ :'warning' => :'warning',
335
+ :'warning_url' => :'warning_url',
336
+ :'age_restriction' => :'age_restriction',
337
+ :'review_count' => :'review_count',
338
+ :'star_rating' => :'star_rating',
339
+ :'store_review_count' => :'store_review_count',
340
+ :'store_star_rating' => :'store_star_rating',
341
+ :'related_product_id' => :'related_product_id',
342
+ :'relationship_type' => :'relationship_type',
343
+ :'target_countries' => :'target_countries',
344
+ :'store_country' => :'store_country',
345
+ :'q_and_a' => :'q_and_a',
346
+ :'qand_a' => :'qandA',
347
+ :'reviews' => :'reviews'
348
+ }
349
+ end
350
+
351
+ # Attribute mapping from JSON key to ruby-style variable name.
352
+ def self.json_map
353
+ {
354
+ :'item_id' => :'item_id',
355
+ :'title' => :'title',
356
+ :'description' => :'description',
357
+ :'url' => :'url',
358
+ :'image_url' => :'image_url',
359
+ :'additional_image_urls' => :'additional_image_urls',
360
+ :'video_url' => :'video_url',
361
+ :'model_3d_url' => :'model_3d_url',
362
+ :'availability' => :'availability',
363
+ :'availability_date' => :'availability_date',
364
+ :'expiration_date' => :'expiration_date',
365
+ :'price' => :'price',
366
+ :'currency' => :'currency',
367
+ :'sale_price' => :'sale_price',
368
+ :'sale_price_start_date' => :'sale_price_start_date',
369
+ :'sale_price_end_date' => :'sale_price_end_date',
370
+ :'unit_pricing_measure' => :'unit_pricing_measure',
371
+ :'base_measure' => :'base_measure',
372
+ :'pricing_trend' => :'pricing_trend',
373
+ :'geo_price' => :'geo_price',
374
+ :'geo_availability' => :'geo_availability',
375
+ :'brand' => :'brand',
376
+ :'gtin' => :'gtin',
377
+ :'mpn' => :'mpn',
378
+ :'product_category' => :'product_category',
379
+ :'condition' => :'condition',
380
+ :'material' => :'material',
381
+ :'weight' => :'weight',
382
+ :'dimensions' => :'dimensions',
383
+ :'length' => :'length',
384
+ :'width' => :'width',
385
+ :'height' => :'height',
386
+ :'dimensions_unit' => :'dimensions_unit',
387
+ :'item_weight_unit' => :'item_weight_unit',
388
+ :'age_group' => :'age_group',
389
+ :'color' => :'color',
390
+ :'size' => :'size',
391
+ :'size_system' => :'size_system',
392
+ :'gender' => :'gender',
393
+ :'group_id' => :'group_id',
394
+ :'listing_has_variations' => :'listing_has_variations',
395
+ :'item_group_title' => :'item_group_title',
396
+ :'offer_id' => :'offer_id',
397
+ :'variant_dict' => :'variant_dict',
398
+ :'custom_variant1_category' => :'custom_variant1_category',
399
+ :'custom_variant1_option' => :'custom_variant1_option',
400
+ :'custom_variant2_category' => :'custom_variant2_category',
401
+ :'custom_variant2_option' => :'custom_variant2_option',
402
+ :'custom_variant3_category' => :'custom_variant3_category',
403
+ :'custom_variant3_option' => :'custom_variant3_option',
404
+ :'seller_name' => :'seller_name',
405
+ :'seller_url' => :'seller_url',
406
+ :'marketplace_seller' => :'marketplace_seller',
407
+ :'seller_privacy_policy' => :'seller_privacy_policy',
408
+ :'seller_tos' => :'seller_tos',
409
+ :'shipping_price' => :'shipping_price',
410
+ :'delivery_estimate' => :'delivery_estimate',
411
+ :'pickup_method' => :'pickup_method',
412
+ :'pickup_sla' => :'pickup_sla',
413
+ :'is_digital' => :'is_digital',
414
+ :'return_policy' => :'return_policy',
415
+ :'accepts_returns' => :'accepts_returns',
416
+ :'return_deadline_in_days' => :'return_deadline_in_days',
417
+ :'accepts_exchanges' => :'accepts_exchanges',
418
+ :'is_eligible_search' => :'is_eligible_search',
419
+ :'is_eligible_checkout' => :'is_eligible_checkout',
420
+ :'popularity_score' => :'popularity_score',
421
+ :'return_rate' => :'return_rate',
422
+ :'warning' => :'warning',
423
+ :'warning_url' => :'warning_url',
424
+ :'age_restriction' => :'age_restriction',
425
+ :'review_count' => :'review_count',
426
+ :'star_rating' => :'star_rating',
427
+ :'store_review_count' => :'store_review_count',
428
+ :'store_star_rating' => :'store_star_rating',
429
+ :'related_product_id' => :'related_product_id',
430
+ :'relationship_type' => :'relationship_type',
431
+ :'target_countries' => :'target_countries',
432
+ :'store_country' => :'store_country',
433
+ :'q_and_a' => :'q_and_a',
434
+ :'qand_a' => :'qand_a',
435
+ :'reviews' => :'reviews'
436
+ }
437
+ end
438
+
439
+ # Attribute type mapping.
440
+ def self.swagger_types
441
+ {
442
+ :'item_id' => :'String',
443
+ :'title' => :'String',
444
+ :'description' => :'String',
445
+ :'url' => :'String',
446
+ :'image_url' => :'String',
447
+ :'additional_image_urls' => :'String',
448
+ :'video_url' => :'String',
449
+ :'model_3d_url' => :'String',
450
+ :'availability' => :'String',
451
+ :'availability_date' => :'Date',
452
+ :'expiration_date' => :'Date',
453
+ :'price' => :'Float',
454
+ :'currency' => :'String',
455
+ :'sale_price' => :'Float',
456
+ :'sale_price_start_date' => :'Date',
457
+ :'sale_price_end_date' => :'Date',
458
+ :'unit_pricing_measure' => :'String',
459
+ :'base_measure' => :'String',
460
+ :'pricing_trend' => :'String',
461
+ :'geo_price' => :'String',
462
+ :'geo_availability' => :'String',
463
+ :'brand' => :'String',
464
+ :'gtin' => :'String',
465
+ :'mpn' => :'String',
466
+ :'product_category' => :'String',
467
+ :'condition' => :'String',
468
+ :'material' => :'String',
469
+ :'weight' => :'String',
470
+ :'dimensions' => :'String',
471
+ :'length' => :'String',
472
+ :'width' => :'String',
473
+ :'height' => :'String',
474
+ :'dimensions_unit' => :'String',
475
+ :'item_weight_unit' => :'String',
476
+ :'age_group' => :'String',
477
+ :'color' => :'String',
478
+ :'size' => :'String',
479
+ :'size_system' => :'String',
480
+ :'gender' => :'String',
481
+ :'group_id' => :'String',
482
+ :'listing_has_variations' => :'BOOLEAN',
483
+ :'item_group_title' => :'String',
484
+ :'offer_id' => :'String',
485
+ :'variant_dict' => :'Hash<String, String>',
486
+ :'custom_variant1_category' => :'String',
487
+ :'custom_variant1_option' => :'String',
488
+ :'custom_variant2_category' => :'String',
489
+ :'custom_variant2_option' => :'String',
490
+ :'custom_variant3_category' => :'String',
491
+ :'custom_variant3_option' => :'String',
492
+ :'seller_name' => :'String',
493
+ :'seller_url' => :'String',
494
+ :'marketplace_seller' => :'String',
495
+ :'seller_privacy_policy' => :'String',
496
+ :'seller_tos' => :'String',
497
+ :'shipping_price' => :'String',
498
+ :'delivery_estimate' => :'Date',
499
+ :'pickup_method' => :'String',
500
+ :'pickup_sla' => :'String',
501
+ :'is_digital' => :'BOOLEAN',
502
+ :'return_policy' => :'String',
503
+ :'accepts_returns' => :'BOOLEAN',
504
+ :'return_deadline_in_days' => :'Integer',
505
+ :'accepts_exchanges' => :'BOOLEAN',
506
+ :'is_eligible_search' => :'BOOLEAN',
507
+ :'is_eligible_checkout' => :'BOOLEAN',
508
+ :'popularity_score' => :'Float',
509
+ :'return_rate' => :'String',
510
+ :'warning' => :'String',
511
+ :'warning_url' => :'String',
512
+ :'age_restriction' => :'Integer',
513
+ :'review_count' => :'Integer',
514
+ :'star_rating' => :'String',
515
+ :'store_review_count' => :'Integer',
516
+ :'store_star_rating' => :'String',
517
+ :'related_product_id' => :'String',
518
+ :'relationship_type' => :'String',
519
+ :'target_countries' => :'Array<String>',
520
+ :'store_country' => :'String',
521
+ :'q_and_a' => :'Array<Hash<String, Object>>',
522
+ :'qand_a' => :'Array<Hash<String, Object>>',
523
+ :'reviews' => :'Array<Hash<String, Object>>'
524
+ }
525
+ end
526
+
527
+ # Initializes the object
528
+ # @param [Hash] attributes Model attributes in the form of hash
529
+ def initialize(attributes = {})
530
+ return unless attributes.is_a?(Hash)
531
+
532
+ # convert string to symbol for hash key
533
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
534
+
535
+ if attributes.has_key?(:'item_id')
536
+ self.item_id = attributes[:'item_id']
537
+ end
538
+
539
+ if attributes.has_key?(:'title')
540
+ self.title = attributes[:'title']
541
+ end
542
+
543
+ if attributes.has_key?(:'description')
544
+ self.description = attributes[:'description']
545
+ end
546
+
547
+ if attributes.has_key?(:'url')
548
+ self.url = attributes[:'url']
549
+ end
550
+
551
+ if attributes.has_key?(:'image_url')
552
+ self.image_url = attributes[:'image_url']
553
+ end
554
+
555
+ if attributes.has_key?(:'additional_image_urls')
556
+ self.additional_image_urls = attributes[:'additional_image_urls']
557
+ end
558
+
559
+ if attributes.has_key?(:'video_url')
560
+ self.video_url = attributes[:'video_url']
561
+ end
562
+
563
+ if attributes.has_key?(:'model_3d_url')
564
+ self.model_3d_url = attributes[:'model_3d_url']
565
+ end
566
+
567
+ if attributes.has_key?(:'availability')
568
+ self.availability = attributes[:'availability']
569
+ end
570
+
571
+ if attributes.has_key?(:'availability_date')
572
+ self.availability_date = attributes[:'availability_date']
573
+ end
574
+
575
+ if attributes.has_key?(:'expiration_date')
576
+ self.expiration_date = attributes[:'expiration_date']
577
+ end
578
+
579
+ if attributes.has_key?(:'price')
580
+ self.price = attributes[:'price']
581
+ end
582
+
583
+ if attributes.has_key?(:'currency')
584
+ self.currency = attributes[:'currency']
585
+ end
586
+
587
+ if attributes.has_key?(:'sale_price')
588
+ self.sale_price = attributes[:'sale_price']
589
+ end
590
+
591
+ if attributes.has_key?(:'sale_price_start_date')
592
+ self.sale_price_start_date = attributes[:'sale_price_start_date']
593
+ end
594
+
595
+ if attributes.has_key?(:'sale_price_end_date')
596
+ self.sale_price_end_date = attributes[:'sale_price_end_date']
597
+ end
598
+
599
+ if attributes.has_key?(:'unit_pricing_measure')
600
+ self.unit_pricing_measure = attributes[:'unit_pricing_measure']
601
+ end
602
+
603
+ if attributes.has_key?(:'base_measure')
604
+ self.base_measure = attributes[:'base_measure']
605
+ end
606
+
607
+ if attributes.has_key?(:'pricing_trend')
608
+ self.pricing_trend = attributes[:'pricing_trend']
609
+ end
610
+
611
+ if attributes.has_key?(:'geo_price')
612
+ self.geo_price = attributes[:'geo_price']
613
+ end
614
+
615
+ if attributes.has_key?(:'geo_availability')
616
+ self.geo_availability = attributes[:'geo_availability']
617
+ end
618
+
619
+ if attributes.has_key?(:'brand')
620
+ self.brand = attributes[:'brand']
621
+ end
622
+
623
+ if attributes.has_key?(:'gtin')
624
+ self.gtin = attributes[:'gtin']
625
+ end
626
+
627
+ if attributes.has_key?(:'mpn')
628
+ self.mpn = attributes[:'mpn']
629
+ end
630
+
631
+ if attributes.has_key?(:'product_category')
632
+ self.product_category = attributes[:'product_category']
633
+ end
634
+
635
+ if attributes.has_key?(:'condition')
636
+ self.condition = attributes[:'condition']
637
+ end
638
+
639
+ if attributes.has_key?(:'material')
640
+ self.material = attributes[:'material']
641
+ end
642
+
643
+ if attributes.has_key?(:'weight')
644
+ self.weight = attributes[:'weight']
645
+ end
646
+
647
+ if attributes.has_key?(:'dimensions')
648
+ self.dimensions = attributes[:'dimensions']
649
+ end
650
+
651
+ if attributes.has_key?(:'length')
652
+ self.length = attributes[:'length']
653
+ end
654
+
655
+ if attributes.has_key?(:'width')
656
+ self.width = attributes[:'width']
657
+ end
658
+
659
+ if attributes.has_key?(:'height')
660
+ self.height = attributes[:'height']
661
+ end
662
+
663
+ if attributes.has_key?(:'dimensions_unit')
664
+ self.dimensions_unit = attributes[:'dimensions_unit']
665
+ end
666
+
667
+ if attributes.has_key?(:'item_weight_unit')
668
+ self.item_weight_unit = attributes[:'item_weight_unit']
669
+ end
670
+
671
+ if attributes.has_key?(:'age_group')
672
+ self.age_group = attributes[:'age_group']
673
+ end
674
+
675
+ if attributes.has_key?(:'color')
676
+ self.color = attributes[:'color']
677
+ end
678
+
679
+ if attributes.has_key?(:'size')
680
+ self.size = attributes[:'size']
681
+ end
682
+
683
+ if attributes.has_key?(:'size_system')
684
+ self.size_system = attributes[:'size_system']
685
+ end
686
+
687
+ if attributes.has_key?(:'gender')
688
+ self.gender = attributes[:'gender']
689
+ end
690
+
691
+ if attributes.has_key?(:'group_id')
692
+ self.group_id = attributes[:'group_id']
693
+ end
694
+
695
+ if attributes.has_key?(:'listing_has_variations')
696
+ self.listing_has_variations = attributes[:'listing_has_variations']
697
+ end
698
+
699
+ if attributes.has_key?(:'item_group_title')
700
+ self.item_group_title = attributes[:'item_group_title']
701
+ end
702
+
703
+ if attributes.has_key?(:'offer_id')
704
+ self.offer_id = attributes[:'offer_id']
705
+ end
706
+
707
+ if attributes.has_key?(:'variant_dict')
708
+ if (value = attributes[:'variant_dict']).is_a?(Hash)
709
+ self.variant_dict = value
710
+ end
711
+ end
712
+
713
+ if attributes.has_key?(:'custom_variant1_category')
714
+ self.custom_variant1_category = attributes[:'custom_variant1_category']
715
+ end
716
+
717
+ if attributes.has_key?(:'custom_variant1_option')
718
+ self.custom_variant1_option = attributes[:'custom_variant1_option']
719
+ end
720
+
721
+ if attributes.has_key?(:'custom_variant2_category')
722
+ self.custom_variant2_category = attributes[:'custom_variant2_category']
723
+ end
724
+
725
+ if attributes.has_key?(:'custom_variant2_option')
726
+ self.custom_variant2_option = attributes[:'custom_variant2_option']
727
+ end
728
+
729
+ if attributes.has_key?(:'custom_variant3_category')
730
+ self.custom_variant3_category = attributes[:'custom_variant3_category']
731
+ end
732
+
733
+ if attributes.has_key?(:'custom_variant3_option')
734
+ self.custom_variant3_option = attributes[:'custom_variant3_option']
735
+ end
736
+
737
+ if attributes.has_key?(:'seller_name')
738
+ self.seller_name = attributes[:'seller_name']
739
+ end
740
+
741
+ if attributes.has_key?(:'seller_url')
742
+ self.seller_url = attributes[:'seller_url']
743
+ end
744
+
745
+ if attributes.has_key?(:'marketplace_seller')
746
+ self.marketplace_seller = attributes[:'marketplace_seller']
747
+ end
748
+
749
+ if attributes.has_key?(:'seller_privacy_policy')
750
+ self.seller_privacy_policy = attributes[:'seller_privacy_policy']
751
+ end
752
+
753
+ if attributes.has_key?(:'seller_tos')
754
+ self.seller_tos = attributes[:'seller_tos']
755
+ end
756
+
757
+ if attributes.has_key?(:'shipping_price')
758
+ self.shipping_price = attributes[:'shipping_price']
759
+ end
760
+
761
+ if attributes.has_key?(:'delivery_estimate')
762
+ self.delivery_estimate = attributes[:'delivery_estimate']
763
+ end
764
+
765
+ if attributes.has_key?(:'pickup_method')
766
+ self.pickup_method = attributes[:'pickup_method']
767
+ end
768
+
769
+ if attributes.has_key?(:'pickup_sla')
770
+ self.pickup_sla = attributes[:'pickup_sla']
771
+ end
772
+
773
+ if attributes.has_key?(:'is_digital')
774
+ self.is_digital = attributes[:'is_digital']
775
+ end
776
+
777
+ if attributes.has_key?(:'return_policy')
778
+ self.return_policy = attributes[:'return_policy']
779
+ end
780
+
781
+ if attributes.has_key?(:'accepts_returns')
782
+ self.accepts_returns = attributes[:'accepts_returns']
783
+ end
784
+
785
+ if attributes.has_key?(:'return_deadline_in_days')
786
+ self.return_deadline_in_days = attributes[:'return_deadline_in_days']
787
+ end
788
+
789
+ if attributes.has_key?(:'accepts_exchanges')
790
+ self.accepts_exchanges = attributes[:'accepts_exchanges']
791
+ end
792
+
793
+ if attributes.has_key?(:'is_eligible_search')
794
+ self.is_eligible_search = attributes[:'is_eligible_search']
795
+ end
796
+
797
+ if attributes.has_key?(:'is_eligible_checkout')
798
+ self.is_eligible_checkout = attributes[:'is_eligible_checkout']
799
+ end
800
+
801
+ if attributes.has_key?(:'popularity_score')
802
+ self.popularity_score = attributes[:'popularity_score']
803
+ end
804
+
805
+ if attributes.has_key?(:'return_rate')
806
+ self.return_rate = attributes[:'return_rate']
807
+ end
808
+
809
+ if attributes.has_key?(:'warning')
810
+ self.warning = attributes[:'warning']
811
+ end
812
+
813
+ if attributes.has_key?(:'warning_url')
814
+ self.warning_url = attributes[:'warning_url']
815
+ end
816
+
817
+ if attributes.has_key?(:'age_restriction')
818
+ self.age_restriction = attributes[:'age_restriction']
819
+ end
820
+
821
+ if attributes.has_key?(:'review_count')
822
+ self.review_count = attributes[:'review_count']
823
+ end
824
+
825
+ if attributes.has_key?(:'star_rating')
826
+ self.star_rating = attributes[:'star_rating']
827
+ end
828
+
829
+ if attributes.has_key?(:'store_review_count')
830
+ self.store_review_count = attributes[:'store_review_count']
831
+ end
832
+
833
+ if attributes.has_key?(:'store_star_rating')
834
+ self.store_star_rating = attributes[:'store_star_rating']
835
+ end
836
+
837
+ if attributes.has_key?(:'related_product_id')
838
+ self.related_product_id = attributes[:'related_product_id']
839
+ end
840
+
841
+ if attributes.has_key?(:'relationship_type')
842
+ self.relationship_type = attributes[:'relationship_type']
843
+ end
844
+
845
+ if attributes.has_key?(:'target_countries')
846
+ if (value = attributes[:'target_countries']).is_a?(Array)
847
+ self.target_countries = value
848
+ end
849
+ end
850
+
851
+ if attributes.has_key?(:'store_country')
852
+ self.store_country = attributes[:'store_country']
853
+ end
854
+
855
+ if attributes.has_key?(:'q_and_a')
856
+ if (value = attributes[:'q_and_a']).is_a?(Array)
857
+ self.q_and_a = value
858
+ end
859
+ end
860
+
861
+ if attributes.has_key?(:'qandA')
862
+ if (value = attributes[:'qandA']).is_a?(Array)
863
+ self.qand_a = value
864
+ end
865
+ end
866
+
867
+ if attributes.has_key?(:'reviews')
868
+ if (value = attributes[:'reviews']).is_a?(Array)
869
+ self.reviews = value
870
+ end
871
+ end
872
+ end
873
+
874
+ # Show invalid properties with the reasons. Usually used together with valid?
875
+ # @return Array for valid properties with the reasons
876
+ def list_invalid_properties
877
+ invalid_properties = Array.new
878
+ if @item_id.nil?
879
+ invalid_properties.push('invalid value for "item_id", item_id cannot be nil.')
880
+ end
881
+
882
+ if @title.nil?
883
+ invalid_properties.push('invalid value for "title", title cannot be nil.')
884
+ end
885
+
886
+ if @description.nil?
887
+ invalid_properties.push('invalid value for "description", description cannot be nil.')
888
+ end
889
+
890
+ if @url.nil?
891
+ invalid_properties.push('invalid value for "url", url cannot be nil.')
892
+ end
893
+
894
+ if @image_url.nil?
895
+ invalid_properties.push('invalid value for "image_url", image_url cannot be nil.')
896
+ end
897
+
898
+ if @availability.nil?
899
+ invalid_properties.push('invalid value for "availability", availability cannot be nil.')
900
+ end
901
+
902
+ if @price.nil?
903
+ invalid_properties.push('invalid value for "price", price cannot be nil.')
904
+ end
905
+
906
+ if @currency.nil?
907
+ invalid_properties.push('invalid value for "currency", currency cannot be nil.')
908
+ end
909
+
910
+ if @brand.nil?
911
+ invalid_properties.push('invalid value for "brand", brand cannot be nil.')
912
+ end
913
+
914
+ if @group_id.nil?
915
+ invalid_properties.push('invalid value for "group_id", group_id cannot be nil.')
916
+ end
917
+
918
+ if @listing_has_variations.nil?
919
+ invalid_properties.push('invalid value for "listing_has_variations", listing_has_variations cannot be nil.')
920
+ end
921
+
922
+ if @seller_name.nil?
923
+ invalid_properties.push('invalid value for "seller_name", seller_name cannot be nil.')
924
+ end
925
+
926
+ if @seller_url.nil?
927
+ invalid_properties.push('invalid value for "seller_url", seller_url cannot be nil.')
928
+ end
929
+
930
+ if @return_policy.nil?
931
+ invalid_properties.push('invalid value for "return_policy", return_policy cannot be nil.')
932
+ end
933
+
934
+ if @is_eligible_search.nil?
935
+ invalid_properties.push('invalid value for "is_eligible_search", is_eligible_search cannot be nil.')
936
+ end
937
+
938
+ if @is_eligible_checkout.nil?
939
+ invalid_properties.push('invalid value for "is_eligible_checkout", is_eligible_checkout cannot be nil.')
940
+ end
941
+
942
+ if @target_countries.nil?
943
+ invalid_properties.push('invalid value for "target_countries", target_countries cannot be nil.')
944
+ end
945
+
946
+ if @store_country.nil?
947
+ invalid_properties.push('invalid value for "store_country", store_country cannot be nil.')
948
+ end
949
+
950
+ invalid_properties
951
+ end
952
+
953
+ # Check to see if the all the properties in the model are valid
954
+ # @return true if the model is valid
955
+ def valid?
956
+ return false if @item_id.nil?
957
+ return false if @title.nil?
958
+ return false if @description.nil?
959
+ return false if @url.nil?
960
+ return false if @image_url.nil?
961
+ return false if @availability.nil?
962
+ return false if @price.nil?
963
+ return false if @currency.nil?
964
+ return false if @brand.nil?
965
+ return false if @group_id.nil?
966
+ return false if @listing_has_variations.nil?
967
+ return false if @seller_name.nil?
968
+ return false if @seller_url.nil?
969
+ return false if @return_policy.nil?
970
+ return false if @is_eligible_search.nil?
971
+ return false if @is_eligible_checkout.nil?
972
+ return false if @target_countries.nil?
973
+ return false if @store_country.nil?
974
+ true
975
+ end
976
+
977
+ # Custom attribute writer method with validation
978
+ # @param [Object] item_id Value to be assigned
979
+ def item_id=(item_id)
980
+ #if item_id.nil?
981
+ #fail ArgumentError, 'item_id cannot be nil'
982
+ #end
983
+
984
+ @item_id = item_id
985
+ end
986
+
987
+ # Custom attribute writer method with validation
988
+ # @param [Object] title Value to be assigned
989
+ def title=(title)
990
+ #if title.nil?
991
+ #fail ArgumentError, 'title cannot be nil'
992
+ #end
993
+
994
+ @title = title
995
+ end
996
+
997
+ # Custom attribute writer method with validation
998
+ # @param [Object] description Value to be assigned
999
+ def description=(description)
1000
+ #if description.nil?
1001
+ #fail ArgumentError, 'description cannot be nil'
1002
+ #end
1003
+
1004
+ @description = description
1005
+ end
1006
+
1007
+ # Custom attribute writer method with validation
1008
+ # @param [Object] url Value to be assigned
1009
+ def url=(url)
1010
+ #if url.nil?
1011
+ #fail ArgumentError, 'url cannot be nil'
1012
+ #end
1013
+
1014
+ @url = url
1015
+ end
1016
+
1017
+ # Custom attribute writer method with validation
1018
+ # @param [Object] image_url Value to be assigned
1019
+ def image_url=(image_url)
1020
+ #if image_url.nil?
1021
+ #fail ArgumentError, 'image_url cannot be nil'
1022
+ #end
1023
+
1024
+ @image_url = image_url
1025
+ end
1026
+
1027
+ # Custom attribute writer method with validation
1028
+ # @param [Object] availability Value to be assigned
1029
+ def availability=(availability)
1030
+ #if availability.nil?
1031
+ #fail ArgumentError, 'availability cannot be nil'
1032
+ #end
1033
+
1034
+ @availability = availability
1035
+ end
1036
+
1037
+ # Custom attribute writer method with validation
1038
+ # @param [Object] currency Value to be assigned
1039
+ def currency=(currency)
1040
+ #if currency.nil?
1041
+ #fail ArgumentError, 'currency cannot be nil'
1042
+ #end
1043
+
1044
+ @currency = currency
1045
+ end
1046
+
1047
+ # Custom attribute writer method with validation
1048
+ # @param [Object] pricing_trend Value to be assigned
1049
+ def pricing_trend=(pricing_trend)
1050
+ @pricing_trend = pricing_trend
1051
+ end
1052
+
1053
+ # Custom attribute writer method with validation
1054
+ # @param [Object] brand Value to be assigned
1055
+ def brand=(brand)
1056
+ #if brand.nil?
1057
+ #fail ArgumentError, 'brand cannot be nil'
1058
+ #end
1059
+
1060
+ @brand = brand
1061
+ end
1062
+
1063
+ # Custom attribute writer method with validation
1064
+ # @param [Object] gtin Value to be assigned
1065
+ def gtin=(gtin)
1066
+ @gtin = gtin
1067
+ end
1068
+
1069
+ # Custom attribute writer method with validation
1070
+ # @param [Object] mpn Value to be assigned
1071
+ def mpn=(mpn)
1072
+ @mpn = mpn
1073
+ end
1074
+
1075
+ # Custom attribute writer method with validation
1076
+ # @param [Object] product_category Value to be assigned
1077
+ def product_category=(product_category)
1078
+ @product_category = product_category
1079
+ end
1080
+
1081
+ # Custom attribute writer method with validation
1082
+ # @param [Object] material Value to be assigned
1083
+ def material=(material)
1084
+ @material = material
1085
+ end
1086
+
1087
+ # Custom attribute writer method with validation
1088
+ # @param [Object] weight Value to be assigned
1089
+ def weight=(weight)
1090
+ @weight = weight
1091
+ end
1092
+
1093
+ # Custom attribute writer method with validation
1094
+ # @param [Object] dimensions Value to be assigned
1095
+ def dimensions=(dimensions)
1096
+ @dimensions = dimensions
1097
+ end
1098
+
1099
+ # Custom attribute writer method with validation
1100
+ # @param [Object] color Value to be assigned
1101
+ def color=(color)
1102
+ @color = color
1103
+ end
1104
+
1105
+ # Custom attribute writer method with validation
1106
+ # @param [Object] size Value to be assigned
1107
+ def size=(size)
1108
+ @size = size
1109
+ end
1110
+
1111
+ # Custom attribute writer method with validation
1112
+ # @param [Object] group_id Value to be assigned
1113
+ def group_id=(group_id)
1114
+ #if group_id.nil?
1115
+ #fail ArgumentError, 'group_id cannot be nil'
1116
+ #end
1117
+
1118
+ @group_id = group_id
1119
+ end
1120
+
1121
+ # Custom attribute writer method with validation
1122
+ # @param [Object] item_group_title Value to be assigned
1123
+ def item_group_title=(item_group_title)
1124
+ @item_group_title = item_group_title
1125
+ end
1126
+
1127
+ # Custom attribute writer method with validation
1128
+ # @param [Object] seller_name Value to be assigned
1129
+ def seller_name=(seller_name)
1130
+ #if seller_name.nil?
1131
+ #fail ArgumentError, 'seller_name cannot be nil'
1132
+ #end
1133
+
1134
+ @seller_name = seller_name
1135
+ end
1136
+
1137
+ # Custom attribute writer method with validation
1138
+ # @param [Object] seller_url Value to be assigned
1139
+ def seller_url=(seller_url)
1140
+ #if seller_url.nil?
1141
+ #fail ArgumentError, 'seller_url cannot be nil'
1142
+ #end
1143
+
1144
+ @seller_url = seller_url
1145
+ end
1146
+
1147
+ # Custom attribute writer method with validation
1148
+ # @param [Object] marketplace_seller Value to be assigned
1149
+ def marketplace_seller=(marketplace_seller)
1150
+ @marketplace_seller = marketplace_seller
1151
+ end
1152
+
1153
+ # Custom attribute writer method with validation
1154
+ # @param [Object] store_country Value to be assigned
1155
+ def store_country=(store_country)
1156
+ #if store_country.nil?
1157
+ #fail ArgumentError, 'store_country cannot be nil'
1158
+ #end
1159
+
1160
+ @store_country = store_country
1161
+ end
1162
+
1163
+ # Checks equality by comparing each attribute.
1164
+ # @param [Object] Object to be compared
1165
+ def ==(o)
1166
+ return true if self.equal?(o)
1167
+ self.class == o.class &&
1168
+ item_id == o.item_id &&
1169
+ title == o.title &&
1170
+ description == o.description &&
1171
+ url == o.url &&
1172
+ image_url == o.image_url &&
1173
+ additional_image_urls == o.additional_image_urls &&
1174
+ video_url == o.video_url &&
1175
+ model_3d_url == o.model_3d_url &&
1176
+ availability == o.availability &&
1177
+ availability_date == o.availability_date &&
1178
+ expiration_date == o.expiration_date &&
1179
+ price == o.price &&
1180
+ currency == o.currency &&
1181
+ sale_price == o.sale_price &&
1182
+ sale_price_start_date == o.sale_price_start_date &&
1183
+ sale_price_end_date == o.sale_price_end_date &&
1184
+ unit_pricing_measure == o.unit_pricing_measure &&
1185
+ base_measure == o.base_measure &&
1186
+ pricing_trend == o.pricing_trend &&
1187
+ geo_price == o.geo_price &&
1188
+ geo_availability == o.geo_availability &&
1189
+ brand == o.brand &&
1190
+ gtin == o.gtin &&
1191
+ mpn == o.mpn &&
1192
+ product_category == o.product_category &&
1193
+ condition == o.condition &&
1194
+ material == o.material &&
1195
+ weight == o.weight &&
1196
+ dimensions == o.dimensions &&
1197
+ length == o.length &&
1198
+ width == o.width &&
1199
+ height == o.height &&
1200
+ dimensions_unit == o.dimensions_unit &&
1201
+ item_weight_unit == o.item_weight_unit &&
1202
+ age_group == o.age_group &&
1203
+ color == o.color &&
1204
+ size == o.size &&
1205
+ size_system == o.size_system &&
1206
+ gender == o.gender &&
1207
+ group_id == o.group_id &&
1208
+ listing_has_variations == o.listing_has_variations &&
1209
+ item_group_title == o.item_group_title &&
1210
+ offer_id == o.offer_id &&
1211
+ variant_dict == o.variant_dict &&
1212
+ custom_variant1_category == o.custom_variant1_category &&
1213
+ custom_variant1_option == o.custom_variant1_option &&
1214
+ custom_variant2_category == o.custom_variant2_category &&
1215
+ custom_variant2_option == o.custom_variant2_option &&
1216
+ custom_variant3_category == o.custom_variant3_category &&
1217
+ custom_variant3_option == o.custom_variant3_option &&
1218
+ seller_name == o.seller_name &&
1219
+ seller_url == o.seller_url &&
1220
+ marketplace_seller == o.marketplace_seller &&
1221
+ seller_privacy_policy == o.seller_privacy_policy &&
1222
+ seller_tos == o.seller_tos &&
1223
+ shipping_price == o.shipping_price &&
1224
+ delivery_estimate == o.delivery_estimate &&
1225
+ pickup_method == o.pickup_method &&
1226
+ pickup_sla == o.pickup_sla &&
1227
+ is_digital == o.is_digital &&
1228
+ return_policy == o.return_policy &&
1229
+ accepts_returns == o.accepts_returns &&
1230
+ return_deadline_in_days == o.return_deadline_in_days &&
1231
+ accepts_exchanges == o.accepts_exchanges &&
1232
+ is_eligible_search == o.is_eligible_search &&
1233
+ is_eligible_checkout == o.is_eligible_checkout &&
1234
+ popularity_score == o.popularity_score &&
1235
+ return_rate == o.return_rate &&
1236
+ warning == o.warning &&
1237
+ warning_url == o.warning_url &&
1238
+ age_restriction == o.age_restriction &&
1239
+ review_count == o.review_count &&
1240
+ star_rating == o.star_rating &&
1241
+ store_review_count == o.store_review_count &&
1242
+ store_star_rating == o.store_star_rating &&
1243
+ related_product_id == o.related_product_id &&
1244
+ relationship_type == o.relationship_type &&
1245
+ target_countries == o.target_countries &&
1246
+ store_country == o.store_country &&
1247
+ q_and_a == o.q_and_a &&
1248
+ qand_a == o.qand_a &&
1249
+ reviews == o.reviews
1250
+ end
1251
+
1252
+ # @see the `==` method
1253
+ # @param [Object] Object to be compared
1254
+ def eql?(o)
1255
+ self == o
1256
+ end
1257
+
1258
+ # Calculates hash code according to all attributes.
1259
+ # @return [Fixnum] Hash code
1260
+ def hash
1261
+ [item_id, title, description, url, image_url, additional_image_urls, video_url, model_3d_url, availability, availability_date, expiration_date, price, currency, sale_price, sale_price_start_date, sale_price_end_date, unit_pricing_measure, base_measure, pricing_trend, geo_price, geo_availability, brand, gtin, mpn, product_category, condition, material, weight, dimensions, length, width, height, dimensions_unit, item_weight_unit, age_group, color, size, size_system, gender, group_id, listing_has_variations, item_group_title, offer_id, variant_dict, custom_variant1_category, custom_variant1_option, custom_variant2_category, custom_variant2_option, custom_variant3_category, custom_variant3_option, seller_name, seller_url, marketplace_seller, seller_privacy_policy, seller_tos, shipping_price, delivery_estimate, pickup_method, pickup_sla, is_digital, return_policy, accepts_returns, return_deadline_in_days, accepts_exchanges, is_eligible_search, is_eligible_checkout, popularity_score, return_rate, warning, warning_url, age_restriction, review_count, star_rating, store_review_count, store_star_rating, related_product_id, relationship_type, target_countries, store_country, q_and_a, qand_a, reviews].hash
1262
+ end
1263
+
1264
+ # Builds the object from hash
1265
+ # @param [Hash] attributes Model attributes in the form of hash
1266
+ # @return [Object] Returns the model itself
1267
+ def build_from_hash(attributes)
1268
+ return nil unless attributes.is_a?(Hash)
1269
+ self.class.swagger_types.each_pair do |key, type|
1270
+ if type =~ /\AArray<(.*)>/i
1271
+ # check to ensure the input is an array given that the the attribute
1272
+ # is documented as an array but the input is not
1273
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
1274
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
1275
+ end
1276
+ elsif !attributes[self.class.attribute_map[key]].nil?
1277
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
1278
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
1279
+ end
1280
+
1281
+ self
1282
+ end
1283
+
1284
+ # Deserializes the data based on type
1285
+ # @param string type Data type
1286
+ # @param string value Value to be deserialized
1287
+ # @return [Object] Deserialized data
1288
+ def _deserialize(type, value)
1289
+ case type.to_sym
1290
+ when :DateTime
1291
+ DateTime.parse(value)
1292
+ when :Date
1293
+ Date.parse(value)
1294
+ when :String
1295
+ value.to_s
1296
+ when :Integer
1297
+ value.to_i
1298
+ when :Float
1299
+ value.to_f
1300
+ when :BOOLEAN
1301
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
1302
+ true
1303
+ else
1304
+ false
1305
+ end
1306
+ when :Object
1307
+ # generic object (usually a Hash), return directly
1308
+ value
1309
+ when /\AArray<(?<inner_type>.+)>\z/
1310
+ inner_type = Regexp.last_match[:inner_type]
1311
+ value.map { |v| _deserialize(inner_type, v) }
1312
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
1313
+ k_type = Regexp.last_match[:k_type]
1314
+ v_type = Regexp.last_match[:v_type]
1315
+ {}.tap do |hash|
1316
+ value.each do |k, v|
1317
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
1318
+ end
1319
+ end
1320
+ else # model
1321
+ temp_model = CyberSource.const_get(type).new
1322
+ temp_model.build_from_hash(value)
1323
+ end
1324
+ end
1325
+
1326
+ # Returns the string representation of the object
1327
+ # @return [String] String presentation of the object
1328
+ def to_s
1329
+ to_hash.to_s
1330
+ end
1331
+
1332
+ # to_body is an alias to to_hash (backward compatibility)
1333
+ # @return [Hash] Returns the object in the form of hash
1334
+ def to_body
1335
+ to_hash
1336
+ end
1337
+
1338
+ # Returns the object in the form of hash
1339
+ # @return [Hash] Returns the object in the form of hash
1340
+ def to_hash
1341
+ hash = {}
1342
+ self.class.attribute_map.each_pair do |attr, param|
1343
+ value = self.send(attr)
1344
+ next if value.nil?
1345
+ hash[param] = _to_hash(value)
1346
+ end
1347
+ hash
1348
+ end
1349
+
1350
+ # Outputs non-array value in the form of hash
1351
+ # For object, use to_hash. Otherwise, just return the value
1352
+ # @param [Object] value Any valid value
1353
+ # @return [Hash] Returns the value in the form of hash
1354
+ def _to_hash(value)
1355
+ if value.is_a?(Array)
1356
+ value.compact.map { |v| _to_hash(v) }
1357
+ elsif value.is_a?(Hash)
1358
+ {}.tap do |hash|
1359
+ value.each { |k, v| hash[k] = _to_hash(v) }
1360
+ end
1361
+ elsif value.respond_to? :to_hash
1362
+ value.to_hash
1363
+ else
1364
+ value
1365
+ end
1366
+ end
1367
+ end
1368
+ end