maxio-advanced-billing-sdk 3.0.0 → 4.0.0

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 (491) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +42 -41
  3. data/lib/advanced_billing/client.rb +7 -1
  4. data/lib/advanced_billing/configuration.rb +1 -1
  5. data/lib/advanced_billing/controllers/base_controller.rb +1 -1
  6. data/lib/advanced_billing/controllers/component_price_points_controller.rb +420 -0
  7. data/lib/advanced_billing/controllers/components_controller.rb +0 -347
  8. data/lib/advanced_billing/controllers/product_families_controller.rb +2 -2
  9. data/lib/advanced_billing/controllers/product_price_points_controller.rb +16 -9
  10. data/lib/advanced_billing/controllers/products_controller.rb +2 -2
  11. data/lib/advanced_billing/models/account_balance.rb +6 -8
  12. data/lib/advanced_billing/models/account_balances.rb +9 -12
  13. data/lib/advanced_billing/models/ach_agreement.rb +8 -10
  14. data/lib/advanced_billing/models/activate_subscription_request.rb +3 -4
  15. data/lib/advanced_billing/models/add_coupons_request.rb +3 -4
  16. data/lib/advanced_billing/models/add_subscription_to_a_group.rb +3 -4
  17. data/lib/advanced_billing/models/address_change.rb +4 -6
  18. data/lib/advanced_billing/models/agreement_acceptance.rb +10 -14
  19. data/lib/advanced_billing/models/allocate_components.rb +14 -18
  20. data/lib/advanced_billing/models/allocation.rb +39 -52
  21. data/lib/advanced_billing/models/allocation_expiration_date.rb +3 -4
  22. data/lib/advanced_billing/models/allocation_preview.rb +20 -28
  23. data/lib/advanced_billing/models/allocation_preview_item.rb +28 -38
  24. data/lib/advanced_billing/models/allocation_preview_line_item.rb +15 -20
  25. data/lib/advanced_billing/models/allocation_preview_response.rb +3 -4
  26. data/lib/advanced_billing/models/allocation_response.rb +3 -4
  27. data/lib/advanced_billing/models/allocation_settings.rb +6 -8
  28. data/lib/advanced_billing/models/applied_credit_note_data.rb +4 -6
  29. data/lib/advanced_billing/models/apply_credit_note_event.rb +9 -12
  30. data/lib/advanced_billing/models/apply_credit_note_event_data.rb +15 -22
  31. data/lib/advanced_billing/models/apply_debit_note_event.rb +9 -12
  32. data/lib/advanced_billing/models/apply_debit_note_event_data.rb +10 -14
  33. data/lib/advanced_billing/models/apply_payment_event.rb +9 -12
  34. data/lib/advanced_billing/models/apply_payment_event_data.rb +17 -24
  35. data/lib/advanced_billing/models/attribute_error.rb +3 -4
  36. data/lib/advanced_billing/models/auto_resume.rb +3 -4
  37. data/lib/advanced_billing/models/backport_invoice_event.rb +9 -12
  38. data/lib/advanced_billing/models/bank_account_attributes.rb +19 -26
  39. data/lib/advanced_billing/models/bank_account_payment_profile.rb +34 -46
  40. data/lib/advanced_billing/models/bank_account_response.rb +3 -4
  41. data/lib/advanced_billing/models/bank_account_verification.rb +5 -6
  42. data/lib/advanced_billing/models/bank_account_verification_request.rb +3 -4
  43. data/lib/advanced_billing/models/base_refund_error.rb +3 -4
  44. data/lib/advanced_billing/models/base_string_error.rb +3 -4
  45. data/lib/advanced_billing/models/batch_job.rb +8 -12
  46. data/lib/advanced_billing/models/batch_job_response.rb +3 -4
  47. data/lib/advanced_billing/models/billing_manifest.rb +15 -20
  48. data/lib/advanced_billing/models/billing_manifest_item.rb +22 -30
  49. data/lib/advanced_billing/models/billing_schedule.rb +3 -4
  50. data/lib/advanced_billing/models/breakouts.rb +8 -10
  51. data/lib/advanced_billing/models/bulk_components_price_point_assignment.rb +3 -4
  52. data/lib/advanced_billing/models/bulk_create_product_price_points_request.rb +3 -4
  53. data/lib/advanced_billing/models/bulk_create_product_price_points_response.rb +3 -4
  54. data/lib/advanced_billing/models/bulk_create_segments.rb +3 -4
  55. data/lib/advanced_billing/models/bulk_update_segments.rb +3 -4
  56. data/lib/advanced_billing/models/bulk_update_segments_item.rb +5 -8
  57. data/lib/advanced_billing/models/calendar_billing.rb +5 -6
  58. data/lib/advanced_billing/models/cancel_grouped_subscriptions_request.rb +3 -4
  59. data/lib/advanced_billing/models/cancellation_options.rb +5 -6
  60. data/lib/advanced_billing/models/cancellation_request.rb +3 -4
  61. data/lib/advanced_billing/models/change_chargeback_status_event.rb +9 -12
  62. data/lib/advanced_billing/models/change_chargeback_status_event_data.rb +3 -4
  63. data/lib/advanced_billing/models/change_invoice_collection_method_event.rb +11 -12
  64. data/lib/advanced_billing/models/change_invoice_collection_method_event_data.rb +5 -6
  65. data/lib/advanced_billing/models/change_invoice_status_event.rb +9 -12
  66. data/lib/advanced_billing/models/change_invoice_status_event_data.rb +9 -12
  67. data/lib/advanced_billing/models/chargify_ebb.rb +10 -14
  68. data/lib/advanced_billing/models/component.rb +49 -70
  69. data/lib/advanced_billing/models/component_allocation_change.rb +11 -16
  70. data/lib/advanced_billing/models/component_allocation_error_item.rb +7 -10
  71. data/lib/advanced_billing/models/component_cost_data.rb +11 -16
  72. data/lib/advanced_billing/models/component_cost_data_rate_tier.rb +9 -12
  73. data/lib/advanced_billing/models/component_currency_price.rb +10 -14
  74. data/lib/advanced_billing/models/component_currency_prices_response.rb +3 -4
  75. data/lib/advanced_billing/models/component_custom_price.rb +7 -10
  76. data/lib/advanced_billing/models/component_price.rb +13 -18
  77. data/lib/advanced_billing/models/component_price_point.rb +25 -36
  78. data/lib/advanced_billing/models/component_price_point_assignment.rb +5 -6
  79. data/lib/advanced_billing/models/component_price_point_error_item.rb +6 -8
  80. data/lib/advanced_billing/models/component_price_point_item.rb +10 -14
  81. data/lib/advanced_billing/models/component_price_point_response.rb +3 -4
  82. data/lib/advanced_billing/models/component_price_points_response.rb +4 -6
  83. data/lib/advanced_billing/models/component_response.rb +3 -4
  84. data/lib/advanced_billing/models/consolidated_invoice.rb +3 -4
  85. data/lib/advanced_billing/models/count_response.rb +3 -4
  86. data/lib/advanced_billing/models/coupon.rb +45 -62
  87. data/lib/advanced_billing/models/coupon_currency.rb +7 -10
  88. data/lib/advanced_billing/models/coupon_currency_request.rb +3 -4
  89. data/lib/advanced_billing/models/coupon_currency_response.rb +3 -4
  90. data/lib/advanced_billing/models/coupon_response.rb +3 -4
  91. data/lib/advanced_billing/models/coupon_restriction.rb +8 -12
  92. data/lib/advanced_billing/models/coupon_subcodes.rb +3 -4
  93. data/lib/advanced_billing/models/coupon_subcodes_response.rb +6 -8
  94. data/lib/advanced_billing/models/coupon_usage.rb +11 -16
  95. data/lib/advanced_billing/models/create_allocation.rb +18 -24
  96. data/lib/advanced_billing/models/create_allocation_request.rb +3 -4
  97. data/lib/advanced_billing/models/create_component_price_point.rb +13 -18
  98. data/lib/advanced_billing/models/create_component_price_point_request.rb +3 -4
  99. data/lib/advanced_billing/models/create_component_price_points_request.rb +3 -4
  100. data/lib/advanced_billing/models/create_credit_note_event.rb +9 -12
  101. data/lib/advanced_billing/models/create_currency_price.rb +6 -8
  102. data/lib/advanced_billing/models/create_currency_prices_request.rb +3 -4
  103. data/lib/advanced_billing/models/create_customer.rb +25 -38
  104. data/lib/advanced_billing/models/create_customer_request.rb +3 -4
  105. data/lib/advanced_billing/models/create_debit_note_event.rb +9 -12
  106. data/lib/advanced_billing/models/create_ebb_component.rb +3 -4
  107. data/lib/advanced_billing/models/create_invoice.rb +15 -22
  108. data/lib/advanced_billing/models/create_invoice_address.rb +13 -20
  109. data/lib/advanced_billing/models/create_invoice_coupon.rb +10 -14
  110. data/lib/advanced_billing/models/create_invoice_item.rb +18 -26
  111. data/lib/advanced_billing/models/create_invoice_payment.rb +8 -12
  112. data/lib/advanced_billing/models/create_invoice_payment_application.rb +4 -6
  113. data/lib/advanced_billing/models/create_invoice_payment_request.rb +4 -6
  114. data/lib/advanced_billing/models/create_invoice_request.rb +3 -4
  115. data/lib/advanced_billing/models/create_metadata.rb +4 -6
  116. data/lib/advanced_billing/models/create_metadata_request.rb +3 -4
  117. data/lib/advanced_billing/models/create_metafield.rb +7 -10
  118. data/lib/advanced_billing/models/create_metafields_request.rb +3 -4
  119. data/lib/advanced_billing/models/create_metered_component.rb +3 -4
  120. data/lib/advanced_billing/models/create_multi_invoice_payment.rb +9 -14
  121. data/lib/advanced_billing/models/create_multi_invoice_payment_request.rb +3 -4
  122. data/lib/advanced_billing/models/create_offer.rb +11 -16
  123. data/lib/advanced_billing/models/create_offer_component.rb +6 -8
  124. data/lib/advanced_billing/models/create_offer_request.rb +3 -4
  125. data/lib/advanced_billing/models/create_on_off_component.rb +3 -4
  126. data/lib/advanced_billing/models/create_or_update_coupon.rb +6 -8
  127. data/lib/advanced_billing/models/create_or_update_endpoint.rb +4 -6
  128. data/lib/advanced_billing/models/create_or_update_endpoint_request.rb +3 -4
  129. data/lib/advanced_billing/models/create_or_update_flat_amount_coupon.rb +22 -28
  130. data/lib/advanced_billing/models/create_or_update_percentage_coupon.rb +22 -28
  131. data/lib/advanced_billing/models/create_or_update_product.rb +25 -34
  132. data/lib/advanced_billing/models/create_or_update_product_request.rb +3 -4
  133. data/lib/advanced_billing/models/create_or_update_segment_price.rb +6 -8
  134. data/lib/advanced_billing/models/create_payment.rb +7 -10
  135. data/lib/advanced_billing/models/create_payment_profile.rb +47 -66
  136. data/lib/advanced_billing/models/create_payment_profile_request.rb +3 -4
  137. data/lib/advanced_billing/models/create_prepaid_component.rb +3 -4
  138. data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +16 -22
  139. data/lib/advanced_billing/models/create_prepayment.rb +8 -12
  140. data/lib/advanced_billing/models/create_prepayment_request.rb +3 -4
  141. data/lib/advanced_billing/models/create_prepayment_response.rb +3 -4
  142. data/lib/advanced_billing/models/create_product_currency_price.rb +5 -8
  143. data/lib/advanced_billing/models/create_product_currency_prices_request.rb +3 -4
  144. data/lib/advanced_billing/models/create_product_family.rb +6 -8
  145. data/lib/advanced_billing/models/create_product_family_request.rb +3 -4
  146. data/lib/advanced_billing/models/create_product_price_point.rb +22 -30
  147. data/lib/advanced_billing/models/create_product_price_point_request.rb +3 -4
  148. data/lib/advanced_billing/models/create_quantity_based_component.rb +3 -4
  149. data/lib/advanced_billing/models/create_reason_code.rb +6 -8
  150. data/lib/advanced_billing/models/create_reason_code_request.rb +3 -4
  151. data/lib/advanced_billing/models/create_segment.rb +12 -14
  152. data/lib/advanced_billing/models/create_segment_request.rb +3 -4
  153. data/lib/advanced_billing/models/create_subscription.rb +78 -100
  154. data/lib/advanced_billing/models/create_subscription_component.rb +12 -16
  155. data/lib/advanced_billing/models/create_subscription_group.rb +5 -6
  156. data/lib/advanced_billing/models/create_subscription_group_request.rb +3 -4
  157. data/lib/advanced_billing/models/create_subscription_request.rb +3 -4
  158. data/lib/advanced_billing/models/create_usage.rb +7 -10
  159. data/lib/advanced_billing/models/create_usage_request.rb +3 -4
  160. data/lib/advanced_billing/models/created_prepayment.rb +12 -16
  161. data/lib/advanced_billing/models/credit_account_balance_changed.rb +9 -12
  162. data/lib/advanced_billing/models/credit_card_attributes.rb +6 -8
  163. data/lib/advanced_billing/models/credit_card_payment_profile.rb +33 -46
  164. data/lib/advanced_billing/models/credit_note.rb +38 -56
  165. data/lib/advanced_billing/models/credit_note_application.rb +8 -12
  166. data/lib/advanced_billing/models/credit_note_line_item.rb +27 -38
  167. data/lib/advanced_billing/models/credit_scheme_request.rb +3 -4
  168. data/lib/advanced_billing/models/currency_price.rb +10 -14
  169. data/lib/advanced_billing/models/currency_prices_response.rb +3 -4
  170. data/lib/advanced_billing/models/custom_field_value_change.rb +11 -16
  171. data/lib/advanced_billing/models/customer.rb +39 -56
  172. data/lib/advanced_billing/models/customer_attributes.rb +25 -38
  173. data/lib/advanced_billing/models/customer_change.rb +7 -10
  174. data/lib/advanced_billing/models/customer_changes_preview_response.rb +3 -4
  175. data/lib/advanced_billing/models/customer_custom_fields_change.rb +4 -6
  176. data/lib/advanced_billing/models/customer_error.rb +3 -4
  177. data/lib/advanced_billing/models/customer_payer_change.rb +4 -6
  178. data/lib/advanced_billing/models/customer_response.rb +3 -4
  179. data/lib/advanced_billing/models/debit_note.rb +33 -48
  180. data/lib/advanced_billing/models/deduct_service_credit.rb +4 -6
  181. data/lib/advanced_billing/models/deduct_service_credit_request.rb +3 -4
  182. data/lib/advanced_billing/models/delayed_cancellation_response.rb +3 -4
  183. data/lib/advanced_billing/models/delete_subscription_group_response.rb +4 -6
  184. data/lib/advanced_billing/models/dunner_data.rb +10 -14
  185. data/lib/advanced_billing/models/dunning_step_data.rb +12 -18
  186. data/lib/advanced_billing/models/dunning_step_reached.rb +6 -8
  187. data/lib/advanced_billing/models/ebb_component.rb +26 -36
  188. data/lib/advanced_billing/models/ebb_event.rb +3 -4
  189. data/lib/advanced_billing/models/enable_webhooks_request.rb +3 -4
  190. data/lib/advanced_billing/models/enable_webhooks_response.rb +3 -4
  191. data/lib/advanced_billing/models/endpoint.rb +8 -12
  192. data/lib/advanced_billing/models/endpoint_response.rb +3 -4
  193. data/lib/advanced_billing/models/errors.rb +4 -6
  194. data/lib/advanced_billing/models/event.rb +10 -16
  195. data/lib/advanced_billing/models/event_based_billing_segment_error.rb +3 -4
  196. data/lib/advanced_billing/models/event_response.rb +3 -4
  197. data/lib/advanced_billing/models/failed_payment_event.rb +9 -12
  198. data/lib/advanced_billing/models/failed_payment_event_data.rb +8 -12
  199. data/lib/advanced_billing/models/full_subscription_group_response.rb +19 -26
  200. data/lib/advanced_billing/models/get_one_time_token_payment_profile.rb +30 -44
  201. data/lib/advanced_billing/models/get_one_time_token_request.rb +3 -4
  202. data/lib/advanced_billing/models/group_billing.rb +6 -8
  203. data/lib/advanced_billing/models/group_settings.rb +4 -6
  204. data/lib/advanced_billing/models/group_target.rb +4 -6
  205. data/lib/advanced_billing/models/historic_usage.rb +6 -8
  206. data/lib/advanced_billing/models/invoice.rb +74 -106
  207. data/lib/advanced_billing/models/invoice_address.rb +9 -14
  208. data/lib/advanced_billing/models/invoice_balance_item.rb +6 -8
  209. data/lib/advanced_billing/models/invoice_credit.rb +11 -16
  210. data/lib/advanced_billing/models/invoice_custom_field.rb +8 -12
  211. data/lib/advanced_billing/models/invoice_customer.rb +11 -16
  212. data/lib/advanced_billing/models/invoice_discount.rb +18 -26
  213. data/lib/advanced_billing/models/invoice_discount_breakout.rb +6 -8
  214. data/lib/advanced_billing/models/invoice_display_settings.rb +5 -6
  215. data/lib/advanced_billing/models/invoice_issued.rb +20 -32
  216. data/lib/advanced_billing/models/invoice_line_item.rb +32 -46
  217. data/lib/advanced_billing/models/invoice_line_item_component_cost_data.rb +3 -4
  218. data/lib/advanced_billing/models/invoice_line_item_event_data.rb +30 -42
  219. data/lib/advanced_billing/models/invoice_line_item_pricing_detail.rb +4 -6
  220. data/lib/advanced_billing/models/invoice_payer.rb +10 -14
  221. data/lib/advanced_billing/models/invoice_payer_change.rb +7 -10
  222. data/lib/advanced_billing/models/invoice_payment.rb +16 -22
  223. data/lib/advanced_billing/models/invoice_payment_application.rb +6 -8
  224. data/lib/advanced_billing/models/invoice_payment_method.rb +12 -18
  225. data/lib/advanced_billing/models/invoice_pre_payment.rb +6 -8
  226. data/lib/advanced_billing/models/invoice_previous_balance.rb +4 -6
  227. data/lib/advanced_billing/models/invoice_refund.rb +13 -18
  228. data/lib/advanced_billing/models/invoice_response.rb +3 -4
  229. data/lib/advanced_billing/models/invoice_seller.rb +7 -10
  230. data/lib/advanced_billing/models/invoice_tax.rb +17 -24
  231. data/lib/advanced_billing/models/invoice_tax_breakout.rb +7 -10
  232. data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +7 -10
  233. data/lib/advanced_billing/models/issue_advance_invoice_request.rb +3 -4
  234. data/lib/advanced_billing/models/issue_invoice_event.rb +9 -12
  235. data/lib/advanced_billing/models/issue_invoice_event_data.rb +8 -12
  236. data/lib/advanced_billing/models/issue_invoice_request.rb +4 -4
  237. data/lib/advanced_billing/models/issue_service_credit.rb +4 -6
  238. data/lib/advanced_billing/models/issue_service_credit_request.rb +3 -4
  239. data/lib/advanced_billing/models/item_price_point_changed.rb +10 -14
  240. data/lib/advanced_billing/models/item_price_point_data.rb +6 -8
  241. data/lib/advanced_billing/models/list_components_filter.rb +5 -6
  242. data/lib/advanced_billing/models/list_components_price_points_response.rb +3 -4
  243. data/lib/advanced_billing/models/list_coupons_filter.rb +13 -18
  244. data/lib/advanced_billing/models/list_credit_notes_response.rb +3 -4
  245. data/lib/advanced_billing/models/list_invoice_events_response.rb +7 -10
  246. data/lib/advanced_billing/models/list_invoices_response.rb +3 -4
  247. data/lib/advanced_billing/models/list_metafields_response.rb +8 -12
  248. data/lib/advanced_billing/models/list_mrr_filter.rb +3 -4
  249. data/lib/advanced_billing/models/list_mrr_response.rb +3 -4
  250. data/lib/advanced_billing/models/list_mrr_response_result.rb +11 -16
  251. data/lib/advanced_billing/models/list_offers_response.rb +3 -4
  252. data/lib/advanced_billing/models/list_prepayments_filter.rb +6 -8
  253. data/lib/advanced_billing/models/list_price_points_filter.rb +12 -18
  254. data/lib/advanced_billing/models/list_product_price_points_response.rb +3 -4
  255. data/lib/advanced_billing/models/list_products_filter.rb +5 -6
  256. data/lib/advanced_billing/models/list_proforma_invoices_meta.rb +7 -10
  257. data/lib/advanced_billing/models/list_proforma_invoices_response.rb +5 -6
  258. data/lib/advanced_billing/models/list_public_keys_meta.rb +7 -10
  259. data/lib/advanced_billing/models/list_public_keys_response.rb +5 -6
  260. data/lib/advanced_billing/models/list_sale_rep_item.rb +8 -12
  261. data/lib/advanced_billing/models/list_segments_filter.rb +9 -10
  262. data/lib/advanced_billing/models/list_segments_response.rb +3 -4
  263. data/lib/advanced_billing/models/list_subcription_group_prepayment_item.rb +15 -20
  264. data/lib/advanced_billing/models/list_subscription_components_filter.rb +5 -6
  265. data/lib/advanced_billing/models/list_subscription_components_for_site_filter.rb +6 -8
  266. data/lib/advanced_billing/models/list_subscription_components_response.rb +3 -4
  267. data/lib/advanced_billing/models/list_subscription_group_prepayment.rb +3 -4
  268. data/lib/advanced_billing/models/list_subscription_group_prepayment_response.rb +3 -4
  269. data/lib/advanced_billing/models/list_subscription_groups_item.rb +18 -24
  270. data/lib/advanced_billing/models/list_subscription_groups_meta.rb +5 -6
  271. data/lib/advanced_billing/models/list_subscription_groups_response.rb +5 -6
  272. data/lib/advanced_billing/models/metadata.rb +10 -14
  273. data/lib/advanced_billing/models/metafield.rb +9 -14
  274. data/lib/advanced_billing/models/metafield_scope.rb +11 -16
  275. data/lib/advanced_billing/models/metered_component.rb +29 -40
  276. data/lib/advanced_billing/models/metered_usage.rb +10 -14
  277. data/lib/advanced_billing/models/movement.rb +14 -20
  278. data/lib/advanced_billing/models/movement_line_item.rb +14 -20
  279. data/lib/advanced_billing/models/mrr.rb +10 -14
  280. data/lib/advanced_billing/models/mrr_movement.rb +7 -10
  281. data/lib/advanced_billing/models/mrr_response.rb +3 -4
  282. data/lib/advanced_billing/models/multi_invoice_payment.rb +8 -10
  283. data/lib/advanced_billing/models/multi_invoice_payment_response.rb +3 -4
  284. data/lib/advanced_billing/models/nested_subscription_group.rb +7 -10
  285. data/lib/advanced_billing/models/net_terms.rb +10 -12
  286. data/lib/advanced_billing/models/offer.rb +28 -40
  287. data/lib/advanced_billing/models/offer_discount.rb +6 -8
  288. data/lib/advanced_billing/models/offer_item.rb +17 -22
  289. data/lib/advanced_billing/models/offer_response.rb +3 -4
  290. data/lib/advanced_billing/models/offer_signup_page.rb +9 -14
  291. data/lib/advanced_billing/models/on_off_component.rb +26 -36
  292. data/lib/advanced_billing/models/organization_address.rb +12 -18
  293. data/lib/advanced_billing/models/origin_invoice.rb +4 -6
  294. data/lib/advanced_billing/models/overage_pricing.rb +4 -6
  295. data/lib/advanced_billing/models/override_subscription.rb +9 -12
  296. data/lib/advanced_billing/models/override_subscription_request.rb +3 -4
  297. data/lib/advanced_billing/models/paginated_metadata.rb +8 -12
  298. data/lib/advanced_billing/models/paid_invoice.rb +7 -10
  299. data/lib/advanced_billing/models/pause_request.rb +3 -4
  300. data/lib/advanced_billing/models/payer_attributes.rb +25 -38
  301. data/lib/advanced_billing/models/payer_error.rb +6 -8
  302. data/lib/advanced_billing/models/payment_collection_method_changed.rb +4 -6
  303. data/lib/advanced_billing/models/payment_for_allocation.rb +7 -10
  304. data/lib/advanced_billing/models/payment_method_apple_pay.rb +3 -4
  305. data/lib/advanced_billing/models/payment_method_bank_account.rb +6 -8
  306. data/lib/advanced_billing/models/payment_method_credit_card.rb +9 -12
  307. data/lib/advanced_billing/models/payment_method_external.rb +6 -10
  308. data/lib/advanced_billing/models/payment_method_paypal.rb +4 -6
  309. data/lib/advanced_billing/models/payment_profile_attributes.rb +37 -52
  310. data/lib/advanced_billing/models/payment_profile_response.rb +3 -4
  311. data/lib/advanced_billing/models/payment_related_events.rb +5 -6
  312. data/lib/advanced_billing/models/pending_cancellation_change.rb +4 -6
  313. data/lib/advanced_billing/models/portal_management_link.rb +10 -14
  314. data/lib/advanced_billing/models/prepaid_component_price_point.rb +8 -12
  315. data/lib/advanced_billing/models/prepaid_configuration.rb +10 -12
  316. data/lib/advanced_billing/models/prepaid_configuration_response.rb +3 -4
  317. data/lib/advanced_billing/models/prepaid_product_price_point_filter.rb +2 -2
  318. data/lib/advanced_billing/models/prepaid_subscription_balance_changed.rb +8 -10
  319. data/lib/advanced_billing/models/prepaid_usage.rb +16 -22
  320. data/lib/advanced_billing/models/prepaid_usage_allocation_detail.rb +6 -8
  321. data/lib/advanced_billing/models/prepaid_usage_component.rb +33 -46
  322. data/lib/advanced_billing/models/prepayment.rb +15 -22
  323. data/lib/advanced_billing/models/prepayment_account_balance_changed.rb +8 -10
  324. data/lib/advanced_billing/models/prepayment_response.rb +3 -4
  325. data/lib/advanced_billing/models/prepayments_response.rb +3 -4
  326. data/lib/advanced_billing/models/preview_allocations_request.rb +8 -10
  327. data/lib/advanced_billing/models/price.rb +6 -8
  328. data/lib/advanced_billing/models/product.rb +56 -76
  329. data/lib/advanced_billing/models/product_family.rb +11 -16
  330. data/lib/advanced_billing/models/product_family_response.rb +3 -4
  331. data/lib/advanced_billing/models/product_price_point.rb +36 -50
  332. data/lib/advanced_billing/models/product_price_point_errors.rb +10 -14
  333. data/lib/advanced_billing/models/product_price_point_response.rb +3 -4
  334. data/lib/advanced_billing/models/product_response.rb +3 -4
  335. data/lib/advanced_billing/models/proforma_error.rb +3 -4
  336. data/lib/advanced_billing/models/proforma_invoice.rb +51 -74
  337. data/lib/advanced_billing/models/proforma_invoice_credit.rb +7 -10
  338. data/lib/advanced_billing/models/proforma_invoice_discount.rb +13 -18
  339. data/lib/advanced_billing/models/proforma_invoice_issued.rb +15 -24
  340. data/lib/advanced_billing/models/proforma_invoice_payment.rb +7 -10
  341. data/lib/advanced_billing/models/proforma_invoice_tax.rb +11 -16
  342. data/lib/advanced_billing/models/proration.rb +3 -4
  343. data/lib/advanced_billing/models/public_key.rb +6 -8
  344. data/lib/advanced_billing/models/public_signup_page.rb +7 -10
  345. data/lib/advanced_billing/models/quantity_based_component.rb +30 -42
  346. data/lib/advanced_billing/models/reactivate_subscription_group_request.rb +5 -6
  347. data/lib/advanced_billing/models/reactivate_subscription_group_response.rb +15 -20
  348. data/lib/advanced_billing/models/reactivate_subscription_request.rb +11 -14
  349. data/lib/advanced_billing/models/reactivation_billing.rb +4 -4
  350. data/lib/advanced_billing/models/reason_code.rb +11 -16
  351. data/lib/advanced_billing/models/reason_code_response.rb +3 -4
  352. data/lib/advanced_billing/models/reason_codes_json_response.rb +3 -4
  353. data/lib/advanced_billing/models/record_payment_request.rb +3 -4
  354. data/lib/advanced_billing/models/record_payment_response.rb +5 -6
  355. data/lib/advanced_billing/models/referral_code.rb +7 -10
  356. data/lib/advanced_billing/models/referral_validation_response.rb +3 -4
  357. data/lib/advanced_billing/models/refund_consolidated_invoice.rb +9 -14
  358. data/lib/advanced_billing/models/refund_invoice.rb +10 -14
  359. data/lib/advanced_billing/models/refund_invoice_event.rb +9 -12
  360. data/lib/advanced_billing/models/refund_invoice_event_data.rb +14 -20
  361. data/lib/advanced_billing/models/refund_invoice_request.rb +3 -4
  362. data/lib/advanced_billing/models/refund_prepayment.rb +7 -10
  363. data/lib/advanced_billing/models/refund_prepayment_base_refund_error.rb +3 -4
  364. data/lib/advanced_billing/models/refund_prepayment_request.rb +3 -4
  365. data/lib/advanced_billing/models/refund_success.rb +6 -8
  366. data/lib/advanced_billing/models/remove_payment_event.rb +9 -12
  367. data/lib/advanced_billing/models/remove_payment_event_data.rb +11 -16
  368. data/lib/advanced_billing/models/renewal_preview.rb +15 -20
  369. data/lib/advanced_billing/models/renewal_preview_component.rb +6 -8
  370. data/lib/advanced_billing/models/renewal_preview_line_item.rb +22 -30
  371. data/lib/advanced_billing/models/renewal_preview_request.rb +3 -4
  372. data/lib/advanced_billing/models/renewal_preview_response.rb +3 -4
  373. data/lib/advanced_billing/models/replay_webhooks_request.rb +3 -4
  374. data/lib/advanced_billing/models/replay_webhooks_response.rb +3 -4
  375. data/lib/advanced_billing/models/resent_invitation.rb +8 -10
  376. data/lib/advanced_billing/models/resume_options.rb +5 -6
  377. data/lib/advanced_billing/models/revoked_invitation.rb +6 -8
  378. data/lib/advanced_billing/models/sale_rep.rb +9 -12
  379. data/lib/advanced_billing/models/sale_rep_item_mrr.rb +6 -8
  380. data/lib/advanced_billing/models/sale_rep_settings.rb +11 -16
  381. data/lib/advanced_billing/models/sale_rep_subscription.rb +15 -22
  382. data/lib/advanced_billing/models/segment.rb +20 -26
  383. data/lib/advanced_billing/models/segment_price.rb +13 -18
  384. data/lib/advanced_billing/models/segment_response.rb +3 -4
  385. data/lib/advanced_billing/models/send_invoice_request.rb +6 -8
  386. data/lib/advanced_billing/models/service_credit.rb +9 -12
  387. data/lib/advanced_billing/models/service_credit_response.rb +3 -4
  388. data/lib/advanced_billing/models/signup_proforma_preview.rb +5 -6
  389. data/lib/advanced_billing/models/signup_proforma_preview_response.rb +3 -4
  390. data/lib/advanced_billing/models/site.rb +25 -34
  391. data/lib/advanced_billing/models/site_response.rb +3 -4
  392. data/lib/advanced_billing/models/site_statistics.rb +20 -24
  393. data/lib/advanced_billing/models/site_summary.rb +8 -12
  394. data/lib/advanced_billing/models/subscription.rb +94 -126
  395. data/lib/advanced_billing/models/subscription_component.rb +48 -66
  396. data/lib/advanced_billing/models/subscription_component_allocation_error_item.rb +4 -6
  397. data/lib/advanced_billing/models/subscription_component_response.rb +3 -4
  398. data/lib/advanced_billing/models/subscription_component_subscription.rb +4 -6
  399. data/lib/advanced_billing/models/subscription_custom_price.rb +21 -28
  400. data/lib/advanced_billing/models/subscription_filter.rb +10 -14
  401. data/lib/advanced_billing/models/subscription_group.rb +9 -12
  402. data/lib/advanced_billing/models/subscription_group_balances.rb +8 -10
  403. data/lib/advanced_billing/models/subscription_group_bank_account.rb +26 -34
  404. data/lib/advanced_billing/models/subscription_group_component_custom_price.rb +6 -8
  405. data/lib/advanced_billing/models/subscription_group_credit_card.rb +30 -42
  406. data/lib/advanced_billing/models/subscription_group_customer.rb +8 -12
  407. data/lib/advanced_billing/models/subscription_group_item.rb +16 -22
  408. data/lib/advanced_billing/models/subscription_group_member_error.rb +6 -8
  409. data/lib/advanced_billing/models/subscription_group_members_array_error.rb +3 -4
  410. data/lib/advanced_billing/models/subscription_group_payment_profile.rb +7 -10
  411. data/lib/advanced_billing/models/subscription_group_prepayment.rb +6 -10
  412. data/lib/advanced_billing/models/subscription_group_prepayment_request.rb +3 -4
  413. data/lib/advanced_billing/models/subscription_group_prepayment_response.rb +9 -12
  414. data/lib/advanced_billing/models/subscription_group_response.rb +3 -4
  415. data/lib/advanced_billing/models/subscription_group_signup.rb +13 -18
  416. data/lib/advanced_billing/models/subscription_group_signup_component.rb +9 -12
  417. data/lib/advanced_billing/models/subscription_group_signup_error.rb +10 -14
  418. data/lib/advanced_billing/models/subscription_group_signup_failure.rb +4 -6
  419. data/lib/advanced_billing/models/subscription_group_signup_failure_data.rb +14 -18
  420. data/lib/advanced_billing/models/subscription_group_signup_item.rb +21 -28
  421. data/lib/advanced_billing/models/subscription_group_signup_request.rb +3 -4
  422. data/lib/advanced_billing/models/subscription_group_signup_response.rb +18 -24
  423. data/lib/advanced_billing/models/subscription_group_signup_success.rb +4 -6
  424. data/lib/advanced_billing/models/subscription_group_signup_success_data.rb +14 -20
  425. data/lib/advanced_billing/models/subscription_group_single_error.rb +3 -4
  426. data/lib/advanced_billing/models/subscription_group_subscription_error.rb +14 -18
  427. data/lib/advanced_billing/models/subscription_group_update_error.rb +3 -4
  428. data/lib/advanced_billing/models/subscription_included_coupon.rb +11 -16
  429. data/lib/advanced_billing/models/subscription_migration_preview.rb +8 -10
  430. data/lib/advanced_billing/models/subscription_migration_preview_options.rb +17 -22
  431. data/lib/advanced_billing/models/subscription_migration_preview_request.rb +3 -4
  432. data/lib/advanced_billing/models/subscription_migration_preview_response.rb +3 -4
  433. data/lib/advanced_billing/models/subscription_mrr.rb +6 -8
  434. data/lib/advanced_billing/models/subscription_mrr_breakout.rb +5 -6
  435. data/lib/advanced_billing/models/subscription_mrr_response.rb +3 -4
  436. data/lib/advanced_billing/models/subscription_note.rb +10 -14
  437. data/lib/advanced_billing/models/subscription_note_response.rb +3 -4
  438. data/lib/advanced_billing/models/subscription_preview.rb +5 -6
  439. data/lib/advanced_billing/models/subscription_preview_response.rb +3 -4
  440. data/lib/advanced_billing/models/subscription_product_change.rb +5 -6
  441. data/lib/advanced_billing/models/subscription_product_migration.rb +15 -20
  442. data/lib/advanced_billing/models/subscription_product_migration_request.rb +3 -4
  443. data/lib/advanced_billing/models/subscription_response.rb +3 -4
  444. data/lib/advanced_billing/models/subscription_state_change.rb +5 -6
  445. data/lib/advanced_billing/models/tax_configuration.rb +7 -8
  446. data/lib/advanced_billing/models/too_many_management_link_requests.rb +4 -6
  447. data/lib/advanced_billing/models/update_allocation_expiration_date.rb +3 -4
  448. data/lib/advanced_billing/models/update_component.rb +14 -20
  449. data/lib/advanced_billing/models/update_component_price_point.rb +13 -18
  450. data/lib/advanced_billing/models/update_component_price_point_request.rb +3 -4
  451. data/lib/advanced_billing/models/update_component_request.rb +3 -4
  452. data/lib/advanced_billing/models/update_coupon_currency.rb +4 -6
  453. data/lib/advanced_billing/models/update_currency_price.rb +4 -6
  454. data/lib/advanced_billing/models/update_currency_prices_request.rb +3 -4
  455. data/lib/advanced_billing/models/update_customer.rb +26 -40
  456. data/lib/advanced_billing/models/update_customer_request.rb +3 -4
  457. data/lib/advanced_billing/models/update_metadata.rb +6 -8
  458. data/lib/advanced_billing/models/update_metadata_request.rb +3 -4
  459. data/lib/advanced_billing/models/update_metafield.rb +8 -12
  460. data/lib/advanced_billing/models/update_metafields_request.rb +3 -4
  461. data/lib/advanced_billing/models/update_payment_profile.rb +21 -28
  462. data/lib/advanced_billing/models/update_payment_profile_request.rb +3 -4
  463. data/lib/advanced_billing/models/update_price.rb +9 -12
  464. data/lib/advanced_billing/models/update_product_price_point.rb +5 -6
  465. data/lib/advanced_billing/models/update_product_price_point_request.rb +3 -4
  466. data/lib/advanced_billing/models/update_reason_code.rb +6 -8
  467. data/lib/advanced_billing/models/update_reason_code_request.rb +3 -4
  468. data/lib/advanced_billing/models/update_segment.rb +4 -6
  469. data/lib/advanced_billing/models/update_segment_request.rb +3 -4
  470. data/lib/advanced_billing/models/update_subscription.rb +29 -36
  471. data/lib/advanced_billing/models/update_subscription_component.rb +5 -6
  472. data/lib/advanced_billing/models/update_subscription_group.rb +3 -4
  473. data/lib/advanced_billing/models/update_subscription_group_request.rb +3 -4
  474. data/lib/advanced_billing/models/update_subscription_note.rb +4 -6
  475. data/lib/advanced_billing/models/update_subscription_note_request.rb +3 -4
  476. data/lib/advanced_billing/models/update_subscription_request.rb +3 -4
  477. data/lib/advanced_billing/models/upsert_prepaid_configuration.rb +9 -10
  478. data/lib/advanced_billing/models/upsert_prepaid_configuration_request.rb +3 -4
  479. data/lib/advanced_billing/models/usage.rb +14 -20
  480. data/lib/advanced_billing/models/usage_response.rb +3 -4
  481. data/lib/advanced_billing/models/void_invoice.rb +3 -4
  482. data/lib/advanced_billing/models/void_invoice_event.rb +9 -12
  483. data/lib/advanced_billing/models/void_invoice_event_data.rb +10 -14
  484. data/lib/advanced_billing/models/void_invoice_request.rb +3 -4
  485. data/lib/advanced_billing/models/void_remainder_event.rb +9 -12
  486. data/lib/advanced_billing/models/void_remainder_event_data.rb +7 -10
  487. data/lib/advanced_billing/models/webhook.rb +18 -26
  488. data/lib/advanced_billing/models/webhook_response.rb +3 -4
  489. data/lib/advanced_billing/utilities/union_type_lookup.rb +42 -0
  490. data/lib/advanced_billing.rb +2 -0
  491. metadata +3 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 32c5dafe5bea02b9f4b9e58fe9b135ae484bfe4e621cddafc46492ef9cb46a84
4
- data.tar.gz: 7b375ac0ccb8c59f1573f84bbf40886793981ad28f87727fda0342cda3c35e3d
3
+ metadata.gz: ec42d6b6b61bfb2d3629b91f90b61488f5283e7b3d309c8c0a07c11ba8bd0949
4
+ data.tar.gz: 4cfccc5639ae102e40f4b66d8c54870ccb2cd5b69c369b325744c510fede2bbd
5
5
  SHA512:
6
- metadata.gz: f69877c24f4051ea86da5af356846d3ef5a36bbd7ee147453434488f72eaf0453a9b068013b8f4137d238e7ef168b3e5f1092a8c09a417e6954be648b9c8b273
7
- data.tar.gz: c0d84c7e8e61fd733a10a470eff219c6c1eb5f7165df687abc49a895c66db85dbaeb3be563f0dbc7ec3e6e843a2f6a2d248d79411e776eeaa472d08f9ddb5619
6
+ metadata.gz: 51fad65ae3b11804cdfe05815b330571a04e89ec3d4b2ecb1a36dfed77acd72663020cb15c24cd0f76addbadf2fb350c5dac4e13f779682ab69b1f52d6bb3bcf
7
+ data.tar.gz: 7ad806dff750525450654ddb2494ac564094fbc37c5773e89e778433100ac191e0bc9f118cb8da6e21783667cdb06250e0e57194c2a560059f13a9d6c86845b3
data/README.md CHANGED
@@ -30,20 +30,20 @@ curl -u <api_key>:x -H Accept:application/json -H Content-Type:application/json
30
30
  Install the gem from the command line:
31
31
 
32
32
  ```ruby
33
- gem install maxio-advanced-billing-sdk -v 3.0.0
33
+ gem install maxio-advanced-billing-sdk -v 4.0.0
34
34
  ```
35
35
 
36
36
  Or add the gem to your Gemfile and run `bundle`:
37
37
 
38
38
  ```ruby
39
- gem 'maxio-advanced-billing-sdk', '3.0.0'
39
+ gem 'maxio-advanced-billing-sdk', '4.0.0'
40
40
  ```
41
41
 
42
- For additional gem details, see the [RubyGems page for the maxio-advanced-billing-sdk gem](https://rubygems.org/gems/maxio-advanced-billing-sdk/versions/3.0.0).
42
+ For additional gem details, see the [RubyGems page for the maxio-advanced-billing-sdk gem](https://rubygems.org/gems/maxio-advanced-billing-sdk/versions/4.0.0).
43
43
 
44
44
  ## Initialize the API Client
45
45
 
46
- **_Note:_** Documentation for the client can be found [here.](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/client.md)
46
+ **_Note:_** Documentation for the client can be found [here.](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/client.md)
47
47
 
48
48
  The following parameters are configurable for the API Client:
49
49
 
@@ -54,14 +54,14 @@ The following parameters are configurable for the API Client:
54
54
  | `environment` | `Environment` | The API environment. <br> **Default: `Environment.PRODUCTION`** |
55
55
  | `connection` | `Faraday::Connection` | The Faraday connection object passed by the SDK user for making requests |
56
56
  | `adapter` | `Faraday::Adapter` | The Faraday adapter object passed by the SDK user for performing http requests |
57
- | `timeout` | `Float` | The value to use for connection timeout. <br> **Default: 30** |
57
+ | `timeout` | `Float` | The value to use for connection timeout. <br> **Default: 120** |
58
58
  | `max_retries` | `Integer` | The number of times to retry an endpoint call if it fails. <br> **Default: 0** |
59
59
  | `retry_interval` | `Float` | Pause in seconds between retries. <br> **Default: 1** |
60
60
  | `backoff_factor` | `Float` | The amount to multiply each successive retry's interval amount by in order to provide backoff. <br> **Default: 2** |
61
61
  | `retry_statuses` | `Array` | A list of HTTP statuses to retry. <br> **Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524]** |
62
62
  | `retry_methods` | `Array` | A list of HTTP methods to retry. <br> **Default: %i[get put]** |
63
63
  | `http_callback` | `HttpCallBack` | The Http CallBack allows defining callables for pre and post API calls. |
64
- | `basic_auth_credentials` | [`BasicAuthCredentials`](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/$a/https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/basic-authentication.md) | The credential object for Basic Authentication |
64
+ | `basic_auth_credentials` | [`BasicAuthCredentials`](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/$a/https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/basic-authentication.md) | The credential object for Basic Authentication |
65
65
 
66
66
  The API client can be initialized as follows:
67
67
 
@@ -92,45 +92,46 @@ The SDK can be configured to use a different environment for making API calls. A
92
92
 
93
93
  This API uses the following authentication schemes.
94
94
 
95
- * [`BasicAuth (Basic Authentication)`](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/$a/https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/basic-authentication.md)
95
+ * [`BasicAuth (Basic Authentication)`](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/$a/https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/basic-authentication.md)
96
96
 
97
97
  ## List of APIs
98
98
 
99
- * [API Exports](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/api-exports.md)
100
- * [Advance Invoice](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/advance-invoice.md)
101
- * [Billing Portal](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/billing-portal.md)
102
- * [Custom Fields](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/custom-fields.md)
103
- * [Events-Based Billing Segments](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/events-based-billing-segments.md)
104
- * [Payment Profiles](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/payment-profiles.md)
105
- * [Product Families](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/product-families.md)
106
- * [Product Price Points](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/product-price-points.md)
107
- * [Proforma Invoices](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/proforma-invoices.md)
108
- * [Reason Codes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/reason-codes.md)
109
- * [Referral Codes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/referral-codes.md)
110
- * [Sales Commissions](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/sales-commissions.md)
111
- * [Subscription Components](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-components.md)
112
- * [Subscription Groups](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-groups.md)
113
- * [Subscription Group Invoice Account](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-group-invoice-account.md)
114
- * [Subscription Group Status](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-group-status.md)
115
- * [Subscription Invoice Account](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-invoice-account.md)
116
- * [Subscription Notes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-notes.md)
117
- * [Subscription Products](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-products.md)
118
- * [Subscription Status](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscription-status.md)
119
- * [Coupons](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/coupons.md)
120
- * [Components](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/components.md)
121
- * [Customers](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/customers.md)
122
- * [Events](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/events.md)
123
- * [Insights](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/insights.md)
124
- * [Invoices](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/invoices.md)
125
- * [Offers](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/offers.md)
126
- * [Products](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/products.md)
127
- * [Sites](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/sites.md)
128
- * [Subscriptions](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/subscriptions.md)
129
- * [Webhooks](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/controllers/webhooks.md)
99
+ * [API Exports](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/api-exports.md)
100
+ * [Advance Invoice](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/advance-invoice.md)
101
+ * [Billing Portal](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/billing-portal.md)
102
+ * [Component Price Points](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/component-price-points.md)
103
+ * [Custom Fields](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/custom-fields.md)
104
+ * [Events-Based Billing Segments](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/events-based-billing-segments.md)
105
+ * [Payment Profiles](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/payment-profiles.md)
106
+ * [Product Families](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/product-families.md)
107
+ * [Product Price Points](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/product-price-points.md)
108
+ * [Proforma Invoices](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/proforma-invoices.md)
109
+ * [Reason Codes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/reason-codes.md)
110
+ * [Referral Codes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/referral-codes.md)
111
+ * [Sales Commissions](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/sales-commissions.md)
112
+ * [Subscription Components](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-components.md)
113
+ * [Subscription Groups](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-groups.md)
114
+ * [Subscription Group Invoice Account](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-group-invoice-account.md)
115
+ * [Subscription Group Status](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-group-status.md)
116
+ * [Subscription Invoice Account](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-invoice-account.md)
117
+ * [Subscription Notes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-notes.md)
118
+ * [Subscription Products](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-products.md)
119
+ * [Subscription Status](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscription-status.md)
120
+ * [Coupons](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/coupons.md)
121
+ * [Components](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/components.md)
122
+ * [Customers](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/customers.md)
123
+ * [Events](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/events.md)
124
+ * [Insights](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/insights.md)
125
+ * [Invoices](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/invoices.md)
126
+ * [Offers](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/offers.md)
127
+ * [Products](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/products.md)
128
+ * [Sites](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/sites.md)
129
+ * [Subscriptions](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/subscriptions.md)
130
+ * [Webhooks](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/controllers/webhooks.md)
130
131
 
131
132
  ## Classes Documentation
132
133
 
133
- * [Utility Classes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/utility-classes.md)
134
- * [HttpResponse](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/http-response.md)
135
- * [HttpRequest](https://www.github.com/maxio-com/ab-ruby-sdk/tree/3.0.0/doc/http-request.md)
134
+ * [Utility Classes](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/utility-classes.md)
135
+ * [HttpResponse](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/http-response.md)
136
+ * [HttpRequest](https://www.github.com/maxio-com/ab-ruby-sdk/tree/4.0.0/doc/http-request.md)
136
137
 
@@ -39,6 +39,12 @@ module AdvancedBilling
39
39
  @components ||= ComponentsController.new @global_configuration
40
40
  end
41
41
 
42
+ # Access to component_price_points controller.
43
+ # @return [ComponentPricePointsController] Returns the controller instance.
44
+ def component_price_points
45
+ @component_price_points ||= ComponentPricePointsController.new @global_configuration
46
+ end
47
+
42
48
  # Access to customers controller.
43
49
  # @return [CustomersController] Returns the controller instance.
44
50
  def customers
@@ -196,7 +202,7 @@ module AdvancedBilling
196
202
  end
197
203
 
198
204
  def initialize(
199
- connection: nil, adapter: :net_http_persistent, timeout: 30,
205
+ connection: nil, adapter: :net_http_persistent, timeout: 120,
200
206
  max_retries: 0, retry_interval: 1, backoff_factor: 2,
201
207
  retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524],
202
208
  retry_methods: %i[get put], http_callback: nil,
@@ -32,7 +32,7 @@ module AdvancedBilling
32
32
  end
33
33
 
34
34
  def initialize(
35
- connection: nil, adapter: :net_http_persistent, timeout: 30,
35
+ connection: nil, adapter: :net_http_persistent, timeout: 120,
36
36
  max_retries: 0, retry_interval: 1, backoff_factor: 2,
37
37
  retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524],
38
38
  retry_methods: %i[get put], http_callback: nil,
@@ -10,7 +10,7 @@ module AdvancedBilling
10
10
  attr_accessor :config, :http_call_back
11
11
 
12
12
  def self.user_agent
13
- 'AB SDK Ruby:3.0.0 on OS {os-info}'
13
+ 'AB SDK Ruby:4.0.0 on OS {os-info}'
14
14
  end
15
15
 
16
16
  def self.user_agent_parameters
@@ -0,0 +1,420 @@
1
+ # advanced_billing
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module AdvancedBilling
7
+ # ComponentPricePointsController
8
+ class ComponentPricePointsController < BaseController
9
+ # Sets a new default price point for the component. This new default will
10
+ # apply to all new subscriptions going forward - existing subscriptions will
11
+ # remain on their current price point.
12
+ # See [Price Points
13
+ # Documentation](https://chargify.zendesk.com/hc/en-us/articles/440775586588
14
+ # 3#price-points) for more information on price points and moving
15
+ # subscriptions between price points.
16
+ # Note: Custom price points are not able to be set as the default for a
17
+ # component.
18
+ # @param [Integer] component_id Required parameter: The Chargify id of the
19
+ # component to which the price point belongs
20
+ # @param [Integer] price_point_id Required parameter: The Chargify id of the
21
+ # price point
22
+ # @return [ComponentResponse] response from the API call
23
+ def promote_component_price_point_to_default(component_id,
24
+ price_point_id)
25
+ new_api_call_builder
26
+ .request(new_request_builder(HttpMethodEnum::PUT,
27
+ '/components/{component_id}/price_points/{price_point_id}/default.json',
28
+ Server::DEFAULT)
29
+ .template_param(new_parameter(component_id, key: 'component_id')
30
+ .is_required(true)
31
+ .should_encode(true))
32
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
33
+ .is_required(true)
34
+ .should_encode(true))
35
+ .header_param(new_parameter('application/json', key: 'accept'))
36
+ .auth(Single.new('BasicAuth')))
37
+ .response(new_response_handler
38
+ .deserializer(APIHelper.method(:custom_type_deserializer))
39
+ .deserialize_into(ComponentResponse.method(:from_hash)))
40
+ .execute
41
+ end
42
+
43
+ # This endpoint can be used to create a new price point for an existing
44
+ # component.
45
+ # @param [Integer] component_id Required parameter: The Chargify id of the
46
+ # component
47
+ # @param [CreateComponentPricePointRequest] body Optional parameter:
48
+ # Example:
49
+ # @return [ComponentPricePointResponse] response from the API call
50
+ def create_component_price_point(component_id,
51
+ body: nil)
52
+ new_api_call_builder
53
+ .request(new_request_builder(HttpMethodEnum::POST,
54
+ '/components/{component_id}/price_points.json',
55
+ Server::DEFAULT)
56
+ .template_param(new_parameter(component_id, key: 'component_id')
57
+ .is_required(true)
58
+ .should_encode(true))
59
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
60
+ .body_param(new_parameter(body))
61
+ .header_param(new_parameter('application/json', key: 'accept'))
62
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
63
+ .auth(Single.new('BasicAuth')))
64
+ .response(new_response_handler
65
+ .deserializer(APIHelper.method(:custom_type_deserializer))
66
+ .deserialize_into(ComponentPricePointResponse.method(:from_hash)))
67
+ .execute
68
+ end
69
+
70
+ # Use this endpoint to read current price points that are associated with a
71
+ # component.
72
+ # You may specify the component by using either the numeric id or the
73
+ # `handle:gold` syntax.
74
+ # When fetching a component's price points, if you have defined multiple
75
+ # currencies at the site level, you can optionally pass the
76
+ # `?currency_prices=true` query param to include an array of currency price
77
+ # data in the response.
78
+ # If the price point is set to `use_site_exchange_rate: true`, it will
79
+ # return pricing based on the current exchange rate. If the flag is set to
80
+ # false, it will return all of the defined prices for each currency.
81
+ # @param [Integer] component_id Required parameter: The Chargify id of the
82
+ # component
83
+ # @param [TrueClass | FalseClass] currency_prices Optional parameter:
84
+ # Include an array of currency price data
85
+ # @param [Integer] page Optional parameter: Result records are organized in
86
+ # pages. By default, the first page of results is displayed. The page
87
+ # parameter specifies a page number of results to fetch. You can start
88
+ # navigating through the pages to consume the results. You do this by
89
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
90
+ # the query string. If there are no results to return, then an empty result
91
+ # set will be returned. Use in query `page=1`.
92
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
93
+ # many records to fetch in each request. Default value is 20. The maximum
94
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
95
+ # Use in query `per_page=200`.
96
+ # @param [Array[PricePointType]] filter_type Optional parameter: Use in
97
+ # query: `filter[type]=catalog,default`.
98
+ # @return [ComponentPricePointsResponse] response from the API call
99
+ def list_component_price_points(options = {})
100
+ new_api_call_builder
101
+ .request(new_request_builder(HttpMethodEnum::GET,
102
+ '/components/{component_id}/price_points.json',
103
+ Server::DEFAULT)
104
+ .template_param(new_parameter(options['component_id'], key: 'component_id')
105
+ .is_required(true)
106
+ .should_encode(true))
107
+ .query_param(new_parameter(options['currency_prices'], key: 'currency_prices'))
108
+ .query_param(new_parameter(options['page'], key: 'page'))
109
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
110
+ .query_param(new_parameter(options['filter_type'], key: 'filter[type]'))
111
+ .header_param(new_parameter('application/json', key: 'accept'))
112
+ .auth(Single.new('BasicAuth'))
113
+ .array_serialization_format(ArraySerializationFormat::CSV))
114
+ .response(new_response_handler
115
+ .deserializer(APIHelper.method(:custom_type_deserializer))
116
+ .deserialize_into(ComponentPricePointsResponse.method(:from_hash)))
117
+ .execute
118
+ end
119
+
120
+ # Use this endpoint to create multiple component price points in one
121
+ # request.
122
+ # @param [String] component_id Required parameter: The Chargify id of the
123
+ # component for which you want to fetch price points.
124
+ # @param [CreateComponentPricePointsRequest] body Optional parameter:
125
+ # Example:
126
+ # @return [ComponentPricePointsResponse] response from the API call
127
+ def bulk_create_component_price_points(component_id,
128
+ body: nil)
129
+ new_api_call_builder
130
+ .request(new_request_builder(HttpMethodEnum::POST,
131
+ '/components/{component_id}/price_points/bulk.json',
132
+ Server::DEFAULT)
133
+ .template_param(new_parameter(component_id, key: 'component_id')
134
+ .is_required(true)
135
+ .should_encode(true))
136
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
137
+ .body_param(new_parameter(body))
138
+ .header_param(new_parameter('application/json', key: 'accept'))
139
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
140
+ .auth(Single.new('BasicAuth')))
141
+ .response(new_response_handler
142
+ .deserializer(APIHelper.method(:custom_type_deserializer))
143
+ .deserialize_into(ComponentPricePointsResponse.method(:from_hash)))
144
+ .execute
145
+ end
146
+
147
+ # When updating a price point, it's prices can be updated as well by
148
+ # creating new prices or editing / removing existing ones.
149
+ # Passing in a price bracket without an `id` will attempt to create a new
150
+ # price.
151
+ # Including an `id` will update the corresponding price, and including the
152
+ # `_destroy` flag set to true along with the `id` will remove that price.
153
+ # Note: Custom price points cannot be updated directly. They must be edited
154
+ # through the Subscription.
155
+ # @param [Integer | String] component_id Required parameter: The id or
156
+ # handle of the component. When using the handle, it must be prefixed with
157
+ # `handle:`. Example: `123` for an integer ID, or
158
+ # `handle:example-product-handle` for a string handle.
159
+ # @param [Integer | String] price_point_id Required parameter: The id or
160
+ # handle of the price point. When using the handle, it must be prefixed with
161
+ # `handle:`. Example: `123` for an integer ID, or
162
+ # `handle:example-price_point-handle` for a string handle.
163
+ # @param [UpdateComponentPricePointRequest] body Optional parameter:
164
+ # Example:
165
+ # @return [ComponentPricePointResponse] response from the API call
166
+ def update_component_price_point(component_id,
167
+ price_point_id,
168
+ body: nil)
169
+ new_api_call_builder
170
+ .request(new_request_builder(HttpMethodEnum::PUT,
171
+ '/components/{component_id}/price_points/{price_point_id}.json',
172
+ Server::DEFAULT)
173
+ .template_param(new_parameter(component_id, key: 'component_id')
174
+ .is_required(true)
175
+ .should_encode(true)
176
+ .validator(proc do |value|
177
+ UnionTypeLookUp.get(:UpdateComponentPricePointComponentId)
178
+ .validate(value)
179
+ end))
180
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
181
+ .is_required(true)
182
+ .should_encode(true)
183
+ .validator(proc do |value|
184
+ UnionTypeLookUp.get(:UpdateComponentPricePointPricePointId)
185
+ .validate(value)
186
+ end))
187
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
188
+ .body_param(new_parameter(body))
189
+ .header_param(new_parameter('application/json', key: 'accept'))
190
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
191
+ .auth(Single.new('BasicAuth')))
192
+ .response(new_response_handler
193
+ .deserializer(APIHelper.method(:custom_type_deserializer))
194
+ .deserialize_into(ComponentPricePointResponse.method(:from_hash))
195
+ .local_error_template('422',
196
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
197
+ ' Response: \'{$response.body}\'.',
198
+ ErrorArrayMapResponseException))
199
+ .execute
200
+ end
201
+
202
+ # Use this endpoint to retrieve details for a specific component price
203
+ # point. You can achieve this by using either the component price point ID
204
+ # or handle.
205
+ # @param [Integer | String] component_id Required parameter: The id or
206
+ # handle of the component. When using the handle, it must be prefixed with
207
+ # `handle:`. Example: `123` for an integer ID, or
208
+ # `handle:example-product-handle` for a string handle.
209
+ # @param [Integer | String] price_point_id Required parameter: The id or
210
+ # handle of the price point. When using the handle, it must be prefixed with
211
+ # `handle:`. Example: `123` for an integer ID, or
212
+ # `handle:example-price_point-handle` for a string handle.
213
+ # @return [ComponentPricePointResponse] response from the API call
214
+ def read_component_price_point(component_id,
215
+ price_point_id)
216
+ new_api_call_builder
217
+ .request(new_request_builder(HttpMethodEnum::GET,
218
+ '/components/{component_id}/price_points/{price_point_id}.json',
219
+ Server::DEFAULT)
220
+ .template_param(new_parameter(component_id, key: 'component_id')
221
+ .is_required(true)
222
+ .should_encode(true)
223
+ .validator(proc do |value|
224
+ UnionTypeLookUp.get(:ReadComponentPricePointComponentId)
225
+ .validate(value)
226
+ end))
227
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
228
+ .is_required(true)
229
+ .should_encode(true)
230
+ .validator(proc do |value|
231
+ UnionTypeLookUp.get(:ReadComponentPricePointPricePointId)
232
+ .validate(value)
233
+ end))
234
+ .header_param(new_parameter('application/json', key: 'accept'))
235
+ .auth(Single.new('BasicAuth')))
236
+ .response(new_response_handler
237
+ .deserializer(APIHelper.method(:custom_type_deserializer))
238
+ .deserialize_into(ComponentPricePointResponse.method(:from_hash)))
239
+ .execute
240
+ end
241
+
242
+ # A price point can be archived at any time. Subscriptions using a price
243
+ # point that has been archived will continue using it until they're moved to
244
+ # another price point.
245
+ # @param [Integer | String] component_id Required parameter: The id or
246
+ # handle of the component. When using the handle, it must be prefixed with
247
+ # `handle:`. Example: `123` for an integer ID, or
248
+ # `handle:example-product-handle` for a string handle.
249
+ # @param [Integer | String] price_point_id Required parameter: The id or
250
+ # handle of the price point. When using the handle, it must be prefixed with
251
+ # `handle:`. Example: `123` for an integer ID, or
252
+ # `handle:example-price_point-handle` for a string handle.
253
+ # @return [ComponentPricePointResponse] response from the API call
254
+ def archive_component_price_point(component_id,
255
+ price_point_id)
256
+ new_api_call_builder
257
+ .request(new_request_builder(HttpMethodEnum::DELETE,
258
+ '/components/{component_id}/price_points/{price_point_id}.json',
259
+ Server::DEFAULT)
260
+ .template_param(new_parameter(component_id, key: 'component_id')
261
+ .is_required(true)
262
+ .should_encode(true)
263
+ .validator(proc do |value|
264
+ UnionTypeLookUp.get(:ArchiveComponentPricePointComponentId)
265
+ .validate(value)
266
+ end))
267
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
268
+ .is_required(true)
269
+ .should_encode(true)
270
+ .validator(proc do |value|
271
+ UnionTypeLookUp.get(:ArchiveComponentPricePointPricePointId)
272
+ .validate(value)
273
+ end))
274
+ .header_param(new_parameter('application/json', key: 'accept'))
275
+ .auth(Single.new('BasicAuth')))
276
+ .response(new_response_handler
277
+ .deserializer(APIHelper.method(:custom_type_deserializer))
278
+ .deserialize_into(ComponentPricePointResponse.method(:from_hash))
279
+ .local_error_template('422',
280
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
281
+ ' Response: \'{$response.body}\'.',
282
+ ErrorListResponseException))
283
+ .execute
284
+ end
285
+
286
+ # Use this endpoint to unarchive a component price point.
287
+ # @param [Integer] component_id Required parameter: The Chargify id of the
288
+ # component to which the price point belongs
289
+ # @param [Integer] price_point_id Required parameter: The Chargify id of the
290
+ # price point
291
+ # @return [ComponentPricePointResponse] response from the API call
292
+ def unarchive_component_price_point(component_id,
293
+ price_point_id)
294
+ new_api_call_builder
295
+ .request(new_request_builder(HttpMethodEnum::PUT,
296
+ '/components/{component_id}/price_points/{price_point_id}/unarchive.json',
297
+ Server::DEFAULT)
298
+ .template_param(new_parameter(component_id, key: 'component_id')
299
+ .is_required(true)
300
+ .should_encode(true))
301
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
302
+ .is_required(true)
303
+ .should_encode(true))
304
+ .header_param(new_parameter('application/json', key: 'accept'))
305
+ .auth(Single.new('BasicAuth')))
306
+ .response(new_response_handler
307
+ .deserializer(APIHelper.method(:custom_type_deserializer))
308
+ .deserialize_into(ComponentPricePointResponse.method(:from_hash)))
309
+ .execute
310
+ end
311
+
312
+ # This endpoint allows you to create currency prices for a given currency
313
+ # that has been defined on the site level in your settings.
314
+ # When creating currency prices, they need to mirror the structure of your
315
+ # primary pricing. For each price level defined on the component price
316
+ # point, there should be a matching price level created in the given
317
+ # currency.
318
+ # Note: Currency Prices are not able to be created for custom price points.
319
+ # @param [Integer] price_point_id Required parameter: The Chargify id of the
320
+ # price point
321
+ # @param [CreateCurrencyPricesRequest] body Optional parameter: Example:
322
+ # @return [ComponentCurrencyPricesResponse] response from the API call
323
+ def create_currency_prices(price_point_id,
324
+ body: nil)
325
+ new_api_call_builder
326
+ .request(new_request_builder(HttpMethodEnum::POST,
327
+ '/price_points/{price_point_id}/currency_prices.json',
328
+ Server::DEFAULT)
329
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
330
+ .is_required(true)
331
+ .should_encode(true))
332
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
333
+ .body_param(new_parameter(body))
334
+ .header_param(new_parameter('application/json', key: 'accept'))
335
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
336
+ .auth(Single.new('BasicAuth')))
337
+ .response(new_response_handler
338
+ .deserializer(APIHelper.method(:custom_type_deserializer))
339
+ .deserialize_into(ComponentCurrencyPricesResponse.method(:from_hash))
340
+ .local_error('422',
341
+ 'Unprocessable Entity (WebDAV)',
342
+ ErrorArrayMapResponseException))
343
+ .execute
344
+ end
345
+
346
+ # This endpoint allows you to update currency prices for a given currency
347
+ # that has been defined on the site level in your settings.
348
+ # Note: Currency Prices are not able to be updated for custom price points.
349
+ # @param [Integer] price_point_id Required parameter: The Chargify id of the
350
+ # price point
351
+ # @param [UpdateCurrencyPricesRequest] body Optional parameter: Example:
352
+ # @return [ComponentCurrencyPricesResponse] response from the API call
353
+ def update_currency_prices(price_point_id,
354
+ body: nil)
355
+ new_api_call_builder
356
+ .request(new_request_builder(HttpMethodEnum::PUT,
357
+ '/price_points/{price_point_id}/currency_prices.json',
358
+ Server::DEFAULT)
359
+ .template_param(new_parameter(price_point_id, key: 'price_point_id')
360
+ .is_required(true)
361
+ .should_encode(true))
362
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
363
+ .body_param(new_parameter(body))
364
+ .header_param(new_parameter('application/json', key: 'accept'))
365
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
366
+ .auth(Single.new('BasicAuth')))
367
+ .response(new_response_handler
368
+ .deserializer(APIHelper.method(:custom_type_deserializer))
369
+ .deserialize_into(ComponentCurrencyPricesResponse.method(:from_hash))
370
+ .local_error('422',
371
+ 'Unprocessable Entity (WebDAV)',
372
+ ErrorArrayMapResponseException))
373
+ .execute
374
+ end
375
+
376
+ # This method allows to retrieve a list of Components Price Points belonging
377
+ # to a Site.
378
+ # @param [ListComponentsPricePointsInclude] include Optional parameter:
379
+ # Allows including additional data in the response. Use in query:
380
+ # `include=currency_prices`.
381
+ # @param [Integer] page Optional parameter: Result records are organized in
382
+ # pages. By default, the first page of results is displayed. The page
383
+ # parameter specifies a page number of results to fetch. You can start
384
+ # navigating through the pages to consume the results. You do this by
385
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
386
+ # the query string. If there are no results to return, then an empty result
387
+ # set will be returned. Use in query `page=1`.
388
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
389
+ # many records to fetch in each request. Default value is 20. The maximum
390
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
391
+ # Use in query `per_page=200`.
392
+ # @param [SortingDirection] direction Optional parameter: Controls the order
393
+ # in which results are returned. Use in query `direction=asc`.
394
+ # @param [ListPricePointsFilter] filter Optional parameter: Filter to use
395
+ # for List PricePoints operations
396
+ # @return [ListComponentsPricePointsResponse] response from the API call
397
+ def list_all_component_price_points(options = {})
398
+ new_api_call_builder
399
+ .request(new_request_builder(HttpMethodEnum::GET,
400
+ '/components_price_points.json',
401
+ Server::DEFAULT)
402
+ .query_param(new_parameter(options['include'], key: 'include'))
403
+ .query_param(new_parameter(options['page'], key: 'page'))
404
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
405
+ .query_param(new_parameter(options['direction'], key: 'direction'))
406
+ .query_param(new_parameter(options['filter'], key: 'filter'))
407
+ .header_param(new_parameter('application/json', key: 'accept'))
408
+ .auth(Single.new('BasicAuth'))
409
+ .array_serialization_format(ArraySerializationFormat::CSV))
410
+ .response(new_response_handler
411
+ .deserializer(APIHelper.method(:custom_type_deserializer))
412
+ .deserialize_into(ListComponentsPricePointsResponse.method(:from_hash))
413
+ .local_error_template('422',
414
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
415
+ ' Response: \'{$response.body}\'.',
416
+ ErrorListResponseException))
417
+ .execute
418
+ end
419
+ end
420
+ end