maxio-advanced-billing-sdk 0.0.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (711) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +28 -0
  3. data/README.md +374 -0
  4. data/lib/advanced_billing/api_helper.rb +10 -0
  5. data/lib/advanced_billing/client.rb +242 -0
  6. data/lib/advanced_billing/configuration.rb +123 -0
  7. data/lib/advanced_billing/controllers/advance_invoice_controller.rb +115 -0
  8. data/lib/advanced_billing/controllers/api_exports_controller.rb +262 -0
  9. data/lib/advanced_billing/controllers/base_controller.rb +75 -0
  10. data/lib/advanced_billing/controllers/billing_portal_controller.rb +162 -0
  11. data/lib/advanced_billing/controllers/components_controller.rb +908 -0
  12. data/lib/advanced_billing/controllers/coupons_controller.rb +667 -0
  13. data/lib/advanced_billing/controllers/custom_fields_controller.rb +448 -0
  14. data/lib/advanced_billing/controllers/customers_controller.rb +246 -0
  15. data/lib/advanced_billing/controllers/events_based_billing_segments_controller.rb +298 -0
  16. data/lib/advanced_billing/controllers/events_controller.rb +226 -0
  17. data/lib/advanced_billing/controllers/insights_controller.rb +161 -0
  18. data/lib/advanced_billing/controllers/invoices_controller.rb +947 -0
  19. data/lib/advanced_billing/controllers/offers_controller.rb +135 -0
  20. data/lib/advanced_billing/controllers/payment_profiles_controller.rb +745 -0
  21. data/lib/advanced_billing/controllers/product_families_controller.rb +187 -0
  22. data/lib/advanced_billing/controllers/product_price_points_controller.rb +461 -0
  23. data/lib/advanced_billing/controllers/products_controller.rb +224 -0
  24. data/lib/advanced_billing/controllers/proforma_invoices_controller.rb +359 -0
  25. data/lib/advanced_billing/controllers/reason_codes_controller.rb +154 -0
  26. data/lib/advanced_billing/controllers/referral_codes_controller.rb +41 -0
  27. data/lib/advanced_billing/controllers/sales_commissions_controller.rb +189 -0
  28. data/lib/advanced_billing/controllers/sites_controller.rb +90 -0
  29. data/lib/advanced_billing/controllers/subscription_components_controller.rb +982 -0
  30. data/lib/advanced_billing/controllers/subscription_group_invoice_account_controller.rb +155 -0
  31. data/lib/advanced_billing/controllers/subscription_group_status_controller.rb +157 -0
  32. data/lib/advanced_billing/controllers/subscription_groups_controller.rb +295 -0
  33. data/lib/advanced_billing/controllers/subscription_invoice_account_controller.rb +216 -0
  34. data/lib/advanced_billing/controllers/subscription_notes_controller.rb +156 -0
  35. data/lib/advanced_billing/controllers/subscription_products_controller.rb +166 -0
  36. data/lib/advanced_billing/controllers/subscription_status_controller.rb +479 -0
  37. data/lib/advanced_billing/controllers/subscriptions_controller.rb +1345 -0
  38. data/lib/advanced_billing/controllers/webhooks_controller.rb +206 -0
  39. data/lib/advanced_billing/exceptions/api_exception.rb +10 -0
  40. data/lib/advanced_billing/exceptions/component_allocation_error_exception.rb +41 -0
  41. data/lib/advanced_billing/exceptions/component_price_point_error_exception.rb +41 -0
  42. data/lib/advanced_billing/exceptions/customer_error_response_exception.rb +34 -0
  43. data/lib/advanced_billing/exceptions/error_array_map_response_exception.rb +32 -0
  44. data/lib/advanced_billing/exceptions/error_list_response_exception.rb +32 -0
  45. data/lib/advanced_billing/exceptions/error_string_map_response_exception.rb +32 -0
  46. data/lib/advanced_billing/exceptions/event_based_billing_list_segments_errors_exception.rb +32 -0
  47. data/lib/advanced_billing/exceptions/event_based_billing_segment_errors_exception.rb +35 -0
  48. data/lib/advanced_billing/exceptions/event_based_billing_segment_exception.rb +32 -0
  49. data/lib/advanced_billing/exceptions/product_price_point_error_response_exception.rb +32 -0
  50. data/lib/advanced_billing/exceptions/proforma_bad_request_error_response_exception.rb +32 -0
  51. data/lib/advanced_billing/exceptions/refund_prepayment_aggregated_errors_response_exception.rb +33 -0
  52. data/lib/advanced_billing/exceptions/refund_prepayment_base_errors_response_exception.rb +32 -0
  53. data/lib/advanced_billing/exceptions/single_error_response_exception.rb +32 -0
  54. data/lib/advanced_billing/exceptions/single_string_error_response_exception.rb +32 -0
  55. data/lib/advanced_billing/exceptions/subscription_add_coupon_error_exception.rb +47 -0
  56. data/lib/advanced_billing/exceptions/subscription_component_allocation_error_exception.rb +41 -0
  57. data/lib/advanced_billing/exceptions/subscription_group_signup_error_response_exception.rb +32 -0
  58. data/lib/advanced_billing/exceptions/subscription_group_update_error_response_exception.rb +32 -0
  59. data/lib/advanced_billing/exceptions/subscription_remove_coupon_errors_exception.rb +32 -0
  60. data/lib/advanced_billing/exceptions/subscriptions_mrr_error_response_exception.rb +32 -0
  61. data/lib/advanced_billing/exceptions/too_many_management_link_requests_error_exception.rb +32 -0
  62. data/lib/advanced_billing/http/auth/basic_auth.rb +29 -0
  63. data/lib/advanced_billing/http/http_call_back.rb +10 -0
  64. data/lib/advanced_billing/http/http_method_enum.rb +10 -0
  65. data/lib/advanced_billing/http/http_request.rb +10 -0
  66. data/lib/advanced_billing/http/http_response.rb +10 -0
  67. data/lib/advanced_billing/models/account_balance.rb +51 -0
  68. data/lib/advanced_billing/models/account_balances.rb +83 -0
  69. data/lib/advanced_billing/models/ach_agreement.rb +88 -0
  70. data/lib/advanced_billing/models/activate_subscription_request.rb +57 -0
  71. data/lib/advanced_billing/models/add_coupons_request.rb +50 -0
  72. data/lib/advanced_billing/models/add_subscription_to_a_group.rb +62 -0
  73. data/lib/advanced_billing/models/address_change.rb +79 -0
  74. data/lib/advanced_billing/models/agreement_acceptance.rb +117 -0
  75. data/lib/advanced_billing/models/allocate_components.rb +151 -0
  76. data/lib/advanced_billing/models/allocation.rb +340 -0
  77. data/lib/advanced_billing/models/allocation_expiration_date.rb +50 -0
  78. data/lib/advanced_billing/models/allocation_preview.rb +197 -0
  79. data/lib/advanced_billing/models/allocation_preview_direction.rb +23 -0
  80. data/lib/advanced_billing/models/allocation_preview_item.rb +272 -0
  81. data/lib/advanced_billing/models/allocation_preview_line_item.rb +135 -0
  82. data/lib/advanced_billing/models/allocation_preview_line_item_kind.rb +29 -0
  83. data/lib/advanced_billing/models/allocation_preview_response.rb +49 -0
  84. data/lib/advanced_billing/models/allocation_response.rb +50 -0
  85. data/lib/advanced_billing/models/allocation_settings.rb +79 -0
  86. data/lib/advanced_billing/models/applied_credit_note_data.rb +60 -0
  87. data/lib/advanced_billing/models/apply_credit_note_event_data.rb +198 -0
  88. data/lib/advanced_billing/models/apply_debit_note_event_data.rb +111 -0
  89. data/lib/advanced_billing/models/apply_payment_event_data.rb +198 -0
  90. data/lib/advanced_billing/models/attribute_error.rb +48 -0
  91. data/lib/advanced_billing/models/auto_invite.rb +23 -0
  92. data/lib/advanced_billing/models/auto_resume.rb +61 -0
  93. data/lib/advanced_billing/models/bank_account_attributes.rb +175 -0
  94. data/lib/advanced_billing/models/bank_account_holder_type.rb +23 -0
  95. data/lib/advanced_billing/models/bank_account_payment_profile.rb +310 -0
  96. data/lib/advanced_billing/models/bank_account_response.rb +49 -0
  97. data/lib/advanced_billing/models/bank_account_type.rb +23 -0
  98. data/lib/advanced_billing/models/bank_account_vault.rb +32 -0
  99. data/lib/advanced_billing/models/bank_account_verification.rb +62 -0
  100. data/lib/advanced_billing/models/bank_account_verification_request.rb +50 -0
  101. data/lib/advanced_billing/models/base_model.rb +62 -0
  102. data/lib/advanced_billing/models/base_refund_error.rb +50 -0
  103. data/lib/advanced_billing/models/base_string_error.rb +50 -0
  104. data/lib/advanced_billing/models/basic_date_field.rb +23 -0
  105. data/lib/advanced_billing/models/batch_job.rb +94 -0
  106. data/lib/advanced_billing/models/batch_job_response.rb +48 -0
  107. data/lib/advanced_billing/models/billing_address.rb +107 -0
  108. data/lib/advanced_billing/models/billing_manifest.rb +147 -0
  109. data/lib/advanced_billing/models/billing_manifest_item.rb +189 -0
  110. data/lib/advanced_billing/models/billing_manifest_line_item_kind.rb +35 -0
  111. data/lib/advanced_billing/models/billing_schedule.rb +55 -0
  112. data/lib/advanced_billing/models/breakouts.rb +84 -0
  113. data/lib/advanced_billing/models/bulk_component_s_price_point_assignment.rb +59 -0
  114. data/lib/advanced_billing/models/bulk_create_product_price_points_request.rb +57 -0
  115. data/lib/advanced_billing/models/bulk_create_product_price_points_response.rb +59 -0
  116. data/lib/advanced_billing/models/bulk_create_segments.rb +59 -0
  117. data/lib/advanced_billing/models/bulk_update_segments.rb +59 -0
  118. data/lib/advanced_billing/models/bulk_update_segments_item.rb +80 -0
  119. data/lib/advanced_billing/models/calendar_billing.rb +79 -0
  120. data/lib/advanced_billing/models/cancel_grouped_subscriptions_request.rb +51 -0
  121. data/lib/advanced_billing/models/cancellation_method.rb +33 -0
  122. data/lib/advanced_billing/models/cancellation_options.rb +63 -0
  123. data/lib/advanced_billing/models/cancellation_request.rb +48 -0
  124. data/lib/advanced_billing/models/card_type.rb +125 -0
  125. data/lib/advanced_billing/models/change_invoice_collection_method_event_data.rb +81 -0
  126. data/lib/advanced_billing/models/chargify_ebb.rb +116 -0
  127. data/lib/advanced_billing/models/cleanup_scope.rb +26 -0
  128. data/lib/advanced_billing/models/collection_method.rb +32 -0
  129. data/lib/advanced_billing/models/component.rb +495 -0
  130. data/lib/advanced_billing/models/component_allocation_change.rb +147 -0
  131. data/lib/advanced_billing/models/component_allocation_error_item.rb +80 -0
  132. data/lib/advanced_billing/models/component_cost_data.rb +128 -0
  133. data/lib/advanced_billing/models/component_cost_data_rate_tier.rb +94 -0
  134. data/lib/advanced_billing/models/component_currency_price.rb +102 -0
  135. data/lib/advanced_billing/models/component_currency_prices_response.rb +57 -0
  136. data/lib/advanced_billing/models/component_custom_price.rb +96 -0
  137. data/lib/advanced_billing/models/component_kind.rb +32 -0
  138. data/lib/advanced_billing/models/component_price.rb +127 -0
  139. data/lib/advanced_billing/models/component_price_point.rb +304 -0
  140. data/lib/advanced_billing/models/component_price_point_error_item.rb +70 -0
  141. data/lib/advanced_billing/models/component_price_point_item.rb +119 -0
  142. data/lib/advanced_billing/models/component_price_point_response.rb +48 -0
  143. data/lib/advanced_billing/models/component_price_points_response.rb +69 -0
  144. data/lib/advanced_billing/models/component_response.rb +48 -0
  145. data/lib/advanced_billing/models/component_s_price_point_assignment.rb +72 -0
  146. data/lib/advanced_billing/models/compounding_strategy.rb +23 -0
  147. data/lib/advanced_billing/models/consolidated_invoice.rb +59 -0
  148. data/lib/advanced_billing/models/count_response.rb +50 -0
  149. data/lib/advanced_billing/models/coupon.rb +384 -0
  150. data/lib/advanced_billing/models/coupon_currency.rb +80 -0
  151. data/lib/advanced_billing/models/coupon_currency_request.rb +57 -0
  152. data/lib/advanced_billing/models/coupon_currency_response.rb +59 -0
  153. data/lib/advanced_billing/models/coupon_response.rb +50 -0
  154. data/lib/advanced_billing/models/coupon_restriction.rb +92 -0
  155. data/lib/advanced_billing/models/coupon_subcodes.rb +50 -0
  156. data/lib/advanced_billing/models/coupon_subcodes_response.rb +71 -0
  157. data/lib/advanced_billing/models/coupon_usage.rb +118 -0
  158. data/lib/advanced_billing/models/create_allocation.rb +198 -0
  159. data/lib/advanced_billing/models/create_allocation_request.rb +48 -0
  160. data/lib/advanced_billing/models/create_component_price_point.rb +163 -0
  161. data/lib/advanced_billing/models/create_component_price_point_request.rb +64 -0
  162. data/lib/advanced_billing/models/create_component_price_points_request.rb +64 -0
  163. data/lib/advanced_billing/models/create_currency_price.rb +70 -0
  164. data/lib/advanced_billing/models/create_currency_prices_request.rb +57 -0
  165. data/lib/advanced_billing/models/create_customer.rb +221 -0
  166. data/lib/advanced_billing/models/create_customer_request.rb +48 -0
  167. data/lib/advanced_billing/models/create_ebb_component.rb +49 -0
  168. data/lib/advanced_billing/models/create_invoice.rb +168 -0
  169. data/lib/advanced_billing/models/create_invoice_address.rb +130 -0
  170. data/lib/advanced_billing/models/create_invoice_coupon.rb +117 -0
  171. data/lib/advanced_billing/models/create_invoice_item.rb +192 -0
  172. data/lib/advanced_billing/models/create_invoice_payment.rb +92 -0
  173. data/lib/advanced_billing/models/create_invoice_payment_application.rb +58 -0
  174. data/lib/advanced_billing/models/create_invoice_payment_request.rb +59 -0
  175. data/lib/advanced_billing/models/create_invoice_request.rb +48 -0
  176. data/lib/advanced_billing/models/create_invoice_status.rb +23 -0
  177. data/lib/advanced_billing/models/create_metadata.rb +60 -0
  178. data/lib/advanced_billing/models/create_metadata_request.rb +57 -0
  179. data/lib/advanced_billing/models/create_metafield.rb +96 -0
  180. data/lib/advanced_billing/models/create_metafields_request.rb +64 -0
  181. data/lib/advanced_billing/models/create_metered_component.rb +49 -0
  182. data/lib/advanced_billing/models/create_multi_invoice_payment.rb +133 -0
  183. data/lib/advanced_billing/models/create_multi_invoice_payment_request.rb +48 -0
  184. data/lib/advanced_billing/models/create_offer.rb +117 -0
  185. data/lib/advanced_billing/models/create_offer_component.rb +61 -0
  186. data/lib/advanced_billing/models/create_offer_request.rb +48 -0
  187. data/lib/advanced_billing/models/create_on_off_component.rb +49 -0
  188. data/lib/advanced_billing/models/create_or_update_coupon.rb +86 -0
  189. data/lib/advanced_billing/models/create_or_update_flat_amount_coupon.rb +228 -0
  190. data/lib/advanced_billing/models/create_or_update_percentage_coupon.rb +229 -0
  191. data/lib/advanced_billing/models/create_or_update_product.rb +146 -0
  192. data/lib/advanced_billing/models/create_or_update_product_request.rb +48 -0
  193. data/lib/advanced_billing/models/create_or_update_segment_price.rb +88 -0
  194. data/lib/advanced_billing/models/create_payment.rb +77 -0
  195. data/lib/advanced_billing/models/create_payment_profile.rb +430 -0
  196. data/lib/advanced_billing/models/create_payment_profile_request.rb +49 -0
  197. data/lib/advanced_billing/models/create_prepaid_component.rb +49 -0
  198. data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +197 -0
  199. data/lib/advanced_billing/models/create_prepayment.rb +93 -0
  200. data/lib/advanced_billing/models/create_prepayment_request.rb +48 -0
  201. data/lib/advanced_billing/models/create_prepayment_response.rb +48 -0
  202. data/lib/advanced_billing/models/create_product_currency_price.rb +66 -0
  203. data/lib/advanced_billing/models/create_product_currency_prices_request.rb +57 -0
  204. data/lib/advanced_billing/models/create_product_family.rb +62 -0
  205. data/lib/advanced_billing/models/create_product_family_request.rb +49 -0
  206. data/lib/advanced_billing/models/create_product_price_point.rb +198 -0
  207. data/lib/advanced_billing/models/create_product_price_point_request.rb +48 -0
  208. data/lib/advanced_billing/models/create_quantity_based_component.rb +50 -0
  209. data/lib/advanced_billing/models/create_reason_code.rb +68 -0
  210. data/lib/advanced_billing/models/create_reason_code_request.rb +48 -0
  211. data/lib/advanced_billing/models/create_segment.rb +143 -0
  212. data/lib/advanced_billing/models/create_segment_request.rb +48 -0
  213. data/lib/advanced_billing/models/create_subscription.rb +756 -0
  214. data/lib/advanced_billing/models/create_subscription_component.rb +127 -0
  215. data/lib/advanced_billing/models/create_subscription_group.rb +75 -0
  216. data/lib/advanced_billing/models/create_subscription_group_request.rb +49 -0
  217. data/lib/advanced_billing/models/create_subscription_request.rb +48 -0
  218. data/lib/advanced_billing/models/create_usage.rb +88 -0
  219. data/lib/advanced_billing/models/create_usage_request.rb +48 -0
  220. data/lib/advanced_billing/models/created_prepayment.rb +117 -0
  221. data/lib/advanced_billing/models/credit_account_balance_changed.rb +122 -0
  222. data/lib/advanced_billing/models/credit_card_attributes.rb +72 -0
  223. data/lib/advanced_billing/models/credit_card_payment_profile.rb +306 -0
  224. data/lib/advanced_billing/models/credit_note.rb +417 -0
  225. data/lib/advanced_billing/models/credit_note1.rb +409 -0
  226. data/lib/advanced_billing/models/credit_note_application.rb +92 -0
  227. data/lib/advanced_billing/models/credit_note_line_item.rb +245 -0
  228. data/lib/advanced_billing/models/credit_note_status.rb +23 -0
  229. data/lib/advanced_billing/models/credit_scheme.rb +26 -0
  230. data/lib/advanced_billing/models/credit_scheme_request.rb +48 -0
  231. data/lib/advanced_billing/models/credit_type.rb +28 -0
  232. data/lib/advanced_billing/models/currency_price.rb +102 -0
  233. data/lib/advanced_billing/models/currency_price_role.rb +26 -0
  234. data/lib/advanced_billing/models/currency_prices_response.rb +57 -0
  235. data/lib/advanced_billing/models/current_vault.rb +99 -0
  236. data/lib/advanced_billing/models/custom_field_owner.rb +23 -0
  237. data/lib/advanced_billing/models/custom_field_value_change.rb +148 -0
  238. data/lib/advanced_billing/models/customer.rb +358 -0
  239. data/lib/advanced_billing/models/customer1.rb +114 -0
  240. data/lib/advanced_billing/models/customer_attributes.rb +243 -0
  241. data/lib/advanced_billing/models/customer_change.rb +103 -0
  242. data/lib/advanced_billing/models/customer_changes_preview_response.rb +48 -0
  243. data/lib/advanced_billing/models/customer_custom_fields_change.rb +97 -0
  244. data/lib/advanced_billing/models/customer_error.rb +60 -0
  245. data/lib/advanced_billing/models/customer_payer_change.rb +79 -0
  246. data/lib/advanced_billing/models/customer_response.rb +48 -0
  247. data/lib/advanced_billing/models/deduct_service_credit.rb +81 -0
  248. data/lib/advanced_billing/models/deduct_service_credit_request.rb +48 -0
  249. data/lib/advanced_billing/models/delayed_cancellation_response.rb +50 -0
  250. data/lib/advanced_billing/models/delete_subscription_group_response.rb +60 -0
  251. data/lib/advanced_billing/models/direction.rb +23 -0
  252. data/lib/advanced_billing/models/discount_type.rb +23 -0
  253. data/lib/advanced_billing/models/dunner_data.rb +96 -0
  254. data/lib/advanced_billing/models/dunning_step_data.rb +120 -0
  255. data/lib/advanced_billing/models/dunning_step_reached.rb +92 -0
  256. data/lib/advanced_billing/models/ebb_component.rb +301 -0
  257. data/lib/advanced_billing/models/ebb_event.rb +50 -0
  258. data/lib/advanced_billing/models/enable_webhooks_request.rb +49 -0
  259. data/lib/advanced_billing/models/enable_webhooks_response.rb +51 -0
  260. data/lib/advanced_billing/models/endpoint.rb +91 -0
  261. data/lib/advanced_billing/models/endpoint_response.rb +50 -0
  262. data/lib/advanced_billing/models/errors.rb +60 -0
  263. data/lib/advanced_billing/models/event.rb +150 -0
  264. data/lib/advanced_billing/models/event_based_billing_segment_error.rb +51 -0
  265. data/lib/advanced_billing/models/event_response.rb +48 -0
  266. data/lib/advanced_billing/models/event_type.rb +121 -0
  267. data/lib/advanced_billing/models/extended_interval_unit.rb +26 -0
  268. data/lib/advanced_billing/models/failed_payment_action.rb +37 -0
  269. data/lib/advanced_billing/models/first_charge_type.rb +26 -0
  270. data/lib/advanced_billing/models/full_subscription_group_response.rb +171 -0
  271. data/lib/advanced_billing/models/get_one_time_token_payment_profile.rb +261 -0
  272. data/lib/advanced_billing/models/get_one_time_token_request.rb +49 -0
  273. data/lib/advanced_billing/models/group_billing.rb +77 -0
  274. data/lib/advanced_billing/models/group_settings.rb +75 -0
  275. data/lib/advanced_billing/models/group_target.rb +62 -0
  276. data/lib/advanced_billing/models/group_target_type.rb +32 -0
  277. data/lib/advanced_billing/models/include_not_null.rb +20 -0
  278. data/lib/advanced_billing/models/include_option.rb +23 -0
  279. data/lib/advanced_billing/models/interval_unit.rb +23 -0
  280. data/lib/advanced_billing/models/invoice.rb +734 -0
  281. data/lib/advanced_billing/models/invoice_address.rb +107 -0
  282. data/lib/advanced_billing/models/invoice_balance_item.rb +71 -0
  283. data/lib/advanced_billing/models/invoice_consolidation_level.rb +34 -0
  284. data/lib/advanced_billing/models/invoice_credit.rb +123 -0
  285. data/lib/advanced_billing/models/invoice_custom_field.rb +90 -0
  286. data/lib/advanced_billing/models/invoice_customer.rb +115 -0
  287. data/lib/advanced_billing/models/invoice_date_field.rb +32 -0
  288. data/lib/advanced_billing/models/invoice_discount.rb +174 -0
  289. data/lib/advanced_billing/models/invoice_discount_breakout.rb +72 -0
  290. data/lib/advanced_billing/models/invoice_display_settings.rb +65 -0
  291. data/lib/advanced_billing/models/invoice_event.rb +105 -0
  292. data/lib/advanced_billing/models/invoice_event_data.rb +437 -0
  293. data/lib/advanced_billing/models/invoice_event_payment.rb +158 -0
  294. data/lib/advanced_billing/models/invoice_event_payment1.rb +150 -0
  295. data/lib/advanced_billing/models/invoice_event_payment_method.rb +32 -0
  296. data/lib/advanced_billing/models/invoice_event_type.rb +59 -0
  297. data/lib/advanced_billing/models/invoice_issued.rb +258 -0
  298. data/lib/advanced_billing/models/invoice_line_item.rb +332 -0
  299. data/lib/advanced_billing/models/invoice_line_item_component_cost_data.rb +69 -0
  300. data/lib/advanced_billing/models/invoice_line_item_event_data.rb +266 -0
  301. data/lib/advanced_billing/models/invoice_line_item_pricing_detail.rb +60 -0
  302. data/lib/advanced_billing/models/invoice_payer.rb +103 -0
  303. data/lib/advanced_billing/models/invoice_payer_change.rb +80 -0
  304. data/lib/advanced_billing/models/invoice_payment.rb +158 -0
  305. data/lib/advanced_billing/models/invoice_payment_application.rb +74 -0
  306. data/lib/advanced_billing/models/invoice_payment_method.rb +124 -0
  307. data/lib/advanced_billing/models/invoice_payment_method_type.rb +35 -0
  308. data/lib/advanced_billing/models/invoice_payment_type.rb +29 -0
  309. data/lib/advanced_billing/models/invoice_pre_payment.rb +75 -0
  310. data/lib/advanced_billing/models/invoice_previous_balance.rb +78 -0
  311. data/lib/advanced_billing/models/invoice_refund.rb +106 -0
  312. data/lib/advanced_billing/models/invoice_response.rb +48 -0
  313. data/lib/advanced_billing/models/invoice_role.rb +47 -0
  314. data/lib/advanced_billing/models/invoice_seller.rb +83 -0
  315. data/lib/advanced_billing/models/invoice_sort_field.rb +41 -0
  316. data/lib/advanced_billing/models/invoice_status.rb +37 -0
  317. data/lib/advanced_billing/models/invoice_tax.rb +172 -0
  318. data/lib/advanced_billing/models/invoice_tax_breakout.rb +71 -0
  319. data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +81 -0
  320. data/lib/advanced_billing/models/issue_advance_invoice_request.rb +50 -0
  321. data/lib/advanced_billing/models/issue_invoice_event_data.rb +136 -0
  322. data/lib/advanced_billing/models/issue_invoice_request.rb +63 -0
  323. data/lib/advanced_billing/models/issue_service_credit.rb +81 -0
  324. data/lib/advanced_billing/models/issue_service_credit_request.rb +49 -0
  325. data/lib/advanced_billing/models/item_category.rb +33 -0
  326. data/lib/advanced_billing/models/item_price_point_changed.rb +133 -0
  327. data/lib/advanced_billing/models/item_price_point_data.rb +70 -0
  328. data/lib/advanced_billing/models/line_item_kind.rb +47 -0
  329. data/lib/advanced_billing/models/line_item_transaction_type.rb +38 -0
  330. data/lib/advanced_billing/models/list_components_price_points_include.rb +20 -0
  331. data/lib/advanced_billing/models/list_components_price_points_response.rb +57 -0
  332. data/lib/advanced_billing/models/list_credit_notes_response.rb +57 -0
  333. data/lib/advanced_billing/models/list_events_date_field.rb +20 -0
  334. data/lib/advanced_billing/models/list_invoice_events_response.rb +89 -0
  335. data/lib/advanced_billing/models/list_invoices_response.rb +57 -0
  336. data/lib/advanced_billing/models/list_metafields_response.rb +99 -0
  337. data/lib/advanced_billing/models/list_mrr_response.rb +48 -0
  338. data/lib/advanced_billing/models/list_mrr_response_result.rb +120 -0
  339. data/lib/advanced_billing/models/list_offers_response.rb +59 -0
  340. data/lib/advanced_billing/models/list_product_price_points_response.rb +57 -0
  341. data/lib/advanced_billing/models/list_products_include.rb +20 -0
  342. data/lib/advanced_billing/models/list_products_price_points_include.rb +20 -0
  343. data/lib/advanced_billing/models/list_public_keys_meta.rb +80 -0
  344. data/lib/advanced_billing/models/list_public_keys_response.rb +69 -0
  345. data/lib/advanced_billing/models/list_sale_rep_item.rb +93 -0
  346. data/lib/advanced_billing/models/list_segments_response.rb +59 -0
  347. data/lib/advanced_billing/models/list_subcription_group_prepayment_item.rb +142 -0
  348. data/lib/advanced_billing/models/list_subscription_components_include.rb +20 -0
  349. data/lib/advanced_billing/models/list_subscription_components_response.rb +57 -0
  350. data/lib/advanced_billing/models/list_subscription_components_sort.rb +23 -0
  351. data/lib/advanced_billing/models/list_subscription_group_prepayment.rb +49 -0
  352. data/lib/advanced_billing/models/list_subscription_group_prepayment_date_field.rb +23 -0
  353. data/lib/advanced_billing/models/list_subscription_group_prepayment_response.rb +57 -0
  354. data/lib/advanced_billing/models/list_subscription_groups_item.rb +146 -0
  355. data/lib/advanced_billing/models/list_subscription_groups_meta.rb +60 -0
  356. data/lib/advanced_billing/models/list_subscription_groups_response.rb +69 -0
  357. data/lib/advanced_billing/models/metadata.rb +106 -0
  358. data/lib/advanced_billing/models/metafield.rb +124 -0
  359. data/lib/advanced_billing/models/metafield_input.rb +33 -0
  360. data/lib/advanced_billing/models/metafield_scope.rb +113 -0
  361. data/lib/advanced_billing/models/metered_component.rb +323 -0
  362. data/lib/advanced_billing/models/metered_usage.rb +135 -0
  363. data/lib/advanced_billing/models/movement.rb +143 -0
  364. data/lib/advanced_billing/models/movement_line_item.rb +148 -0
  365. data/lib/advanced_billing/models/mrr.rb +103 -0
  366. data/lib/advanced_billing/models/mrr_movement.rb +81 -0
  367. data/lib/advanced_billing/models/mrr_response.rb +48 -0
  368. data/lib/advanced_billing/models/multi_invoice_payment.rb +92 -0
  369. data/lib/advanced_billing/models/multi_invoice_payment_response.rb +48 -0
  370. data/lib/advanced_billing/models/nested_subscription_group.rb +94 -0
  371. data/lib/advanced_billing/models/net_terms.rb +95 -0
  372. data/lib/advanced_billing/models/offer.rb +266 -0
  373. data/lib/advanced_billing/models/offer_discount.rb +70 -0
  374. data/lib/advanced_billing/models/offer_item.rb +159 -0
  375. data/lib/advanced_billing/models/offer_response.rb +50 -0
  376. data/lib/advanced_billing/models/offer_signup_page.rb +100 -0
  377. data/lib/advanced_billing/models/on_off_component.rb +287 -0
  378. data/lib/advanced_billing/models/organization_address.rb +129 -0
  379. data/lib/advanced_billing/models/origin_invoice.rb +60 -0
  380. data/lib/advanced_billing/models/overage_pricing.rb +73 -0
  381. data/lib/advanced_billing/models/override_subscription.rb +134 -0
  382. data/lib/advanced_billing/models/override_subscription_request.rb +48 -0
  383. data/lib/advanced_billing/models/paginated_metadata.rb +99 -0
  384. data/lib/advanced_billing/models/pause_request.rb +50 -0
  385. data/lib/advanced_billing/models/payer_attributes.rb +223 -0
  386. data/lib/advanced_billing/models/payer_error.rb +70 -0
  387. data/lib/advanced_billing/models/payment.rb +82 -0
  388. data/lib/advanced_billing/models/payment_collection_method_changed.rb +80 -0
  389. data/lib/advanced_billing/models/payment_for_allocation.rb +91 -0
  390. data/lib/advanced_billing/models/payment_method_apple_pay.rb +62 -0
  391. data/lib/advanced_billing/models/payment_method_bank_account.rb +94 -0
  392. data/lib/advanced_billing/models/payment_method_credit_card.rb +117 -0
  393. data/lib/advanced_billing/models/payment_method_external.rb +108 -0
  394. data/lib/advanced_billing/models/payment_method_paypal.rb +79 -0
  395. data/lib/advanced_billing/models/payment_profile_attributes.rb +370 -0
  396. data/lib/advanced_billing/models/payment_profile_response.rb +64 -0
  397. data/lib/advanced_billing/models/payment_related_events.rb +80 -0
  398. data/lib/advanced_billing/models/payment_response.rb +69 -0
  399. data/lib/advanced_billing/models/payment_type.rb +26 -0
  400. data/lib/advanced_billing/models/pending_cancellation_change.rb +80 -0
  401. data/lib/advanced_billing/models/portal_management_link.rb +104 -0
  402. data/lib/advanced_billing/models/prepaid_component_price_point.rb +107 -0
  403. data/lib/advanced_billing/models/prepaid_configuration.rb +105 -0
  404. data/lib/advanced_billing/models/prepaid_configuration_response.rb +49 -0
  405. data/lib/advanced_billing/models/prepaid_subscription_balance_changed.rb +111 -0
  406. data/lib/advanced_billing/models/prepaid_usage.rb +200 -0
  407. data/lib/advanced_billing/models/prepaid_usage_allocation_detail.rb +71 -0
  408. data/lib/advanced_billing/models/prepaid_usage_component.rb +358 -0
  409. data/lib/advanced_billing/models/prepayment.rb +137 -0
  410. data/lib/advanced_billing/models/prepayment_account_balance_changed.rb +109 -0
  411. data/lib/advanced_billing/models/prepayment_aggregated_error.rb +71 -0
  412. data/lib/advanced_billing/models/prepayment_method.rb +41 -0
  413. data/lib/advanced_billing/models/prepayment_response.rb +48 -0
  414. data/lib/advanced_billing/models/prepayments_response.rb +59 -0
  415. data/lib/advanced_billing/models/preview_allocations_request.rb +99 -0
  416. data/lib/advanced_billing/models/price.rb +99 -0
  417. data/lib/advanced_billing/models/price_point.rb +206 -0
  418. data/lib/advanced_billing/models/price_point_type.rb +30 -0
  419. data/lib/advanced_billing/models/pricing_scheme.rb +31 -0
  420. data/lib/advanced_billing/models/product.rb +547 -0
  421. data/lib/advanced_billing/models/product_family.rb +114 -0
  422. data/lib/advanced_billing/models/product_family_response.rb +50 -0
  423. data/lib/advanced_billing/models/product_price_point.rb +346 -0
  424. data/lib/advanced_billing/models/product_price_point_errors.rb +101 -0
  425. data/lib/advanced_billing/models/product_price_point_response.rb +48 -0
  426. data/lib/advanced_billing/models/product_response.rb +48 -0
  427. data/lib/advanced_billing/models/proforma_error.rb +51 -0
  428. data/lib/advanced_billing/models/proforma_invoice.rb +484 -0
  429. data/lib/advanced_billing/models/proforma_invoice_credit.rb +82 -0
  430. data/lib/advanced_billing/models/proforma_invoice_discount.rb +111 -0
  431. data/lib/advanced_billing/models/proforma_invoice_discount_breakout.rb +62 -0
  432. data/lib/advanced_billing/models/proforma_invoice_issued.rb +205 -0
  433. data/lib/advanced_billing/models/proforma_invoice_payment.rb +82 -0
  434. data/lib/advanced_billing/models/proforma_invoice_preview.rb +484 -0
  435. data/lib/advanced_billing/models/proforma_invoice_tax.rb +120 -0
  436. data/lib/advanced_billing/models/proforma_invoice_tax_breakout.rb +61 -0
  437. data/lib/advanced_billing/models/proration.rb +52 -0
  438. data/lib/advanced_billing/models/public_key.rb +71 -0
  439. data/lib/advanced_billing/models/public_signup_page.rb +84 -0
  440. data/lib/advanced_billing/models/quantity_based_component.rb +333 -0
  441. data/lib/advanced_billing/models/reactivate_subscription_group_request.rb +61 -0
  442. data/lib/advanced_billing/models/reactivate_subscription_group_response.rb +135 -0
  443. data/lib/advanced_billing/models/reactivate_subscription_request.rb +125 -0
  444. data/lib/advanced_billing/models/reactivation_billing.rb +56 -0
  445. data/lib/advanced_billing/models/reactivation_charge.rb +30 -0
  446. data/lib/advanced_billing/models/reason_code.rb +110 -0
  447. data/lib/advanced_billing/models/reason_code_response.rb +48 -0
  448. data/lib/advanced_billing/models/reason_codes_json_response.rb +50 -0
  449. data/lib/advanced_billing/models/record_payment_request.rb +48 -0
  450. data/lib/advanced_billing/models/recurring_scheme.rb +26 -0
  451. data/lib/advanced_billing/models/referral_code.rb +81 -0
  452. data/lib/advanced_billing/models/referral_validation_response.rb +50 -0
  453. data/lib/advanced_billing/models/refund.rb +128 -0
  454. data/lib/advanced_billing/models/refund_consolidated_invoice.rb +129 -0
  455. data/lib/advanced_billing/models/refund_invoice.rb +128 -0
  456. data/lib/advanced_billing/models/refund_invoice_event_data.rb +195 -0
  457. data/lib/advanced_billing/models/refund_invoice_request.rb +64 -0
  458. data/lib/advanced_billing/models/refund_prepayment.rb +108 -0
  459. data/lib/advanced_billing/models/refund_prepayment_aggregated_error.rb +50 -0
  460. data/lib/advanced_billing/models/refund_prepayment_base_refund_error.rb +50 -0
  461. data/lib/advanced_billing/models/refund_prepayment_request.rb +48 -0
  462. data/lib/advanced_billing/models/refund_success.rb +93 -0
  463. data/lib/advanced_billing/models/remove_payment_event_data.rb +155 -0
  464. data/lib/advanced_billing/models/renewal_preview.rb +161 -0
  465. data/lib/advanced_billing/models/renewal_preview_component.rb +93 -0
  466. data/lib/advanced_billing/models/renewal_preview_line_item.rb +189 -0
  467. data/lib/advanced_billing/models/renewal_preview_request.rb +62 -0
  468. data/lib/advanced_billing/models/renewal_preview_response.rb +49 -0
  469. data/lib/advanced_billing/models/replay_webhooks_request.rb +48 -0
  470. data/lib/advanced_billing/models/replay_webhooks_response.rb +50 -0
  471. data/lib/advanced_billing/models/resent_invitation.rb +83 -0
  472. data/lib/advanced_billing/models/resource_type.rb +23 -0
  473. data/lib/advanced_billing/models/restriction_type.rb +23 -0
  474. data/lib/advanced_billing/models/resume_options.rb +76 -0
  475. data/lib/advanced_billing/models/resumption_charge.rb +27 -0
  476. data/lib/advanced_billing/models/revoked_invitation.rb +72 -0
  477. data/lib/advanced_billing/models/sale_rep.rb +100 -0
  478. data/lib/advanced_billing/models/sale_rep_item_mrr.rb +70 -0
  479. data/lib/advanced_billing/models/sale_rep_settings.rb +113 -0
  480. data/lib/advanced_billing/models/sale_rep_subscription.rb +143 -0
  481. data/lib/advanced_billing/models/segment.rb +210 -0
  482. data/lib/advanced_billing/models/segment_price.rb +126 -0
  483. data/lib/advanced_billing/models/segment_response.rb +50 -0
  484. data/lib/advanced_billing/models/seller.rb +82 -0
  485. data/lib/advanced_billing/models/send_invoice_request.rb +73 -0
  486. data/lib/advanced_billing/models/service_credit.rb +92 -0
  487. data/lib/advanced_billing/models/service_credit_response.rb +48 -0
  488. data/lib/advanced_billing/models/service_credit_type.rb +23 -0
  489. data/lib/advanced_billing/models/shipping_address.rb +107 -0
  490. data/lib/advanced_billing/models/signup_proforma_preview.rb +62 -0
  491. data/lib/advanced_billing/models/signup_proforma_preview_response.rb +50 -0
  492. data/lib/advanced_billing/models/site.rb +220 -0
  493. data/lib/advanced_billing/models/site_response.rb +48 -0
  494. data/lib/advanced_billing/models/site_statistics.rb +174 -0
  495. data/lib/advanced_billing/models/site_summary.rb +90 -0
  496. data/lib/advanced_billing/models/snap_day.rb +21 -0
  497. data/lib/advanced_billing/models/sorting_direction.rb +23 -0
  498. data/lib/advanced_billing/models/subscription.rb +1014 -0
  499. data/lib/advanced_billing/models/subscription_component.rb +460 -0
  500. data/lib/advanced_billing/models/subscription_component_allocation_error_item.rb +60 -0
  501. data/lib/advanced_billing/models/subscription_component_response.rb +50 -0
  502. data/lib/advanced_billing/models/subscription_component_subscription.rb +197 -0
  503. data/lib/advanced_billing/models/subscription_custom_price.rb +212 -0
  504. data/lib/advanced_billing/models/subscription_date_field.rb +44 -0
  505. data/lib/advanced_billing/models/subscription_group.rb +96 -0
  506. data/lib/advanced_billing/models/subscription_group_balances.rb +82 -0
  507. data/lib/advanced_billing/models/subscription_group_bank_account.rb +216 -0
  508. data/lib/advanced_billing/models/subscription_group_component_custom_price.rb +96 -0
  509. data/lib/advanced_billing/models/subscription_group_credit_card.rb +273 -0
  510. data/lib/advanced_billing/models/subscription_group_customer.rb +90 -0
  511. data/lib/advanced_billing/models/subscription_group_item.rb +152 -0
  512. data/lib/advanced_billing/models/subscription_group_member_error.rb +70 -0
  513. data/lib/advanced_billing/models/subscription_group_payment_profile.rb +81 -0
  514. data/lib/advanced_billing/models/subscription_group_prepayment.rb +75 -0
  515. data/lib/advanced_billing/models/subscription_group_prepayment_method.rb +35 -0
  516. data/lib/advanced_billing/models/subscription_group_prepayment_request.rb +48 -0
  517. data/lib/advanced_billing/models/subscription_group_prepayment_response.rb +92 -0
  518. data/lib/advanced_billing/models/subscription_group_response.rb +49 -0
  519. data/lib/advanced_billing/models/subscription_group_signup.rb +154 -0
  520. data/lib/advanced_billing/models/subscription_group_signup_component.rb +110 -0
  521. data/lib/advanced_billing/models/subscription_group_signup_error.rb +112 -0
  522. data/lib/advanced_billing/models/subscription_group_signup_failure.rb +83 -0
  523. data/lib/advanced_billing/models/subscription_group_signup_failure_data.rb +140 -0
  524. data/lib/advanced_billing/models/subscription_group_signup_item.rb +197 -0
  525. data/lib/advanced_billing/models/subscription_group_signup_request.rb +49 -0
  526. data/lib/advanced_billing/models/subscription_group_signup_response.rb +171 -0
  527. data/lib/advanced_billing/models/subscription_group_signup_success.rb +81 -0
  528. data/lib/advanced_billing/models/subscription_group_signup_success_data.rb +125 -0
  529. data/lib/advanced_billing/models/subscription_group_subscription_error.rb +87 -0
  530. data/lib/advanced_billing/models/subscription_group_update_error.rb +59 -0
  531. data/lib/advanced_billing/models/subscription_include.rb +23 -0
  532. data/lib/advanced_billing/models/subscription_included_coupon.rb +115 -0
  533. data/lib/advanced_billing/models/subscription_list_date_field.rb +20 -0
  534. data/lib/advanced_billing/models/subscription_list_include.rb +20 -0
  535. data/lib/advanced_billing/models/subscription_migration_preview.rb +90 -0
  536. data/lib/advanced_billing/models/subscription_migration_preview_options.rb +163 -0
  537. data/lib/advanced_billing/models/subscription_migration_preview_request.rb +49 -0
  538. data/lib/advanced_billing/models/subscription_migration_preview_response.rb +48 -0
  539. data/lib/advanced_billing/models/subscription_mrr.rb +70 -0
  540. data/lib/advanced_billing/models/subscription_mrr_breakout.rb +59 -0
  541. data/lib/advanced_billing/models/subscription_mrr_response.rb +57 -0
  542. data/lib/advanced_billing/models/subscription_note.rb +101 -0
  543. data/lib/advanced_billing/models/subscription_note_response.rb +48 -0
  544. data/lib/advanced_billing/models/subscription_preview.rb +62 -0
  545. data/lib/advanced_billing/models/subscription_preview_response.rb +49 -0
  546. data/lib/advanced_billing/models/subscription_product_change.rb +81 -0
  547. data/lib/advanced_billing/models/subscription_product_migration.rb +152 -0
  548. data/lib/advanced_billing/models/subscription_product_migration_request.rb +48 -0
  549. data/lib/advanced_billing/models/subscription_purge_type.rb +23 -0
  550. data/lib/advanced_billing/models/subscription_response.rb +50 -0
  551. data/lib/advanced_billing/models/subscription_sort.rb +35 -0
  552. data/lib/advanced_billing/models/subscription_state.rb +118 -0
  553. data/lib/advanced_billing/models/subscription_state_change.rb +81 -0
  554. data/lib/advanced_billing/models/subscription_state_filter.rb +53 -0
  555. data/lib/advanced_billing/models/tax_configuration.rb +74 -0
  556. data/lib/advanced_billing/models/tax_configuration_kind.rb +29 -0
  557. data/lib/advanced_billing/models/tax_destination_address.rb +29 -0
  558. data/lib/advanced_billing/models/too_many_management_link_requests.rb +64 -0
  559. data/lib/advanced_billing/models/update_allocation_expiration_date.rb +50 -0
  560. data/lib/advanced_billing/models/update_component.rb +146 -0
  561. data/lib/advanced_billing/models/update_component_price_point.rb +141 -0
  562. data/lib/advanced_billing/models/update_component_price_point_request.rb +51 -0
  563. data/lib/advanced_billing/models/update_component_request.rb +48 -0
  564. data/lib/advanced_billing/models/update_coupon_currency.rb +57 -0
  565. data/lib/advanced_billing/models/update_currency_price.rb +57 -0
  566. data/lib/advanced_billing/models/update_currency_prices_request.rb +57 -0
  567. data/lib/advanced_billing/models/update_customer.rb +223 -0
  568. data/lib/advanced_billing/models/update_customer_request.rb +48 -0
  569. data/lib/advanced_billing/models/update_endpoint.rb +58 -0
  570. data/lib/advanced_billing/models/update_endpoint_request.rb +48 -0
  571. data/lib/advanced_billing/models/update_metadata.rb +70 -0
  572. data/lib/advanced_billing/models/update_metadata_request.rb +50 -0
  573. data/lib/advanced_billing/models/update_metafield.rb +106 -0
  574. data/lib/advanced_billing/models/update_metafields_request.rb +62 -0
  575. data/lib/advanced_billing/models/update_payment_profile.rb +194 -0
  576. data/lib/advanced_billing/models/update_payment_profile_request.rb +49 -0
  577. data/lib/advanced_billing/models/update_price.rb +109 -0
  578. data/lib/advanced_billing/models/update_product_price_point.rb +61 -0
  579. data/lib/advanced_billing/models/update_product_price_point_request.rb +48 -0
  580. data/lib/advanced_billing/models/update_reason_code.rb +70 -0
  581. data/lib/advanced_billing/models/update_reason_code_request.rb +48 -0
  582. data/lib/advanced_billing/models/update_segment.rb +73 -0
  583. data/lib/advanced_billing/models/update_segment_request.rb +48 -0
  584. data/lib/advanced_billing/models/update_subscription.rb +278 -0
  585. data/lib/advanced_billing/models/update_subscription_component.rb +61 -0
  586. data/lib/advanced_billing/models/update_subscription_group.rb +50 -0
  587. data/lib/advanced_billing/models/update_subscription_group_request.rb +49 -0
  588. data/lib/advanced_billing/models/update_subscription_note.rb +57 -0
  589. data/lib/advanced_billing/models/update_subscription_note_request.rb +48 -0
  590. data/lib/advanced_billing/models/update_subscription_request.rb +48 -0
  591. data/lib/advanced_billing/models/upsert_prepaid_configuration.rb +95 -0
  592. data/lib/advanced_billing/models/upsert_prepaid_configuration_request.rb +49 -0
  593. data/lib/advanced_billing/models/usage.rb +155 -0
  594. data/lib/advanced_billing/models/usage_response.rb +48 -0
  595. data/lib/advanced_billing/models/void_invoice.rb +48 -0
  596. data/lib/advanced_billing/models/void_invoice_event_data.rb +148 -0
  597. data/lib/advanced_billing/models/void_invoice_request.rb +48 -0
  598. data/lib/advanced_billing/models/void_remainder_event_data.rb +115 -0
  599. data/lib/advanced_billing/models/webhook.rb +173 -0
  600. data/lib/advanced_billing/models/webhook_order.rb +23 -0
  601. data/lib/advanced_billing/models/webhook_response.rb +50 -0
  602. data/lib/advanced_billing/models/webhook_status.rb +29 -0
  603. data/lib/advanced_billing/models/webhook_subscription.rb +124 -0
  604. data/lib/advanced_billing/utilities/date_time_helper.rb +11 -0
  605. data/lib/advanced_billing/utilities/file_wrapper.rb +16 -0
  606. data/lib/advanced_billing/utilities/union_type_lookup.rb +1143 -0
  607. data/lib/advanced_billing.rb +671 -0
  608. metadata +608 -105
  609. data/bin/arch +0 -1
  610. data/bin/ash +0 -1
  611. data/bin/base64 +0 -1
  612. data/bin/bbconfig +0 -1
  613. data/bin/busybox +0 -0
  614. data/bin/cat +0 -1
  615. data/bin/chattr +0 -1
  616. data/bin/chgrp +0 -1
  617. data/bin/chmod +0 -1
  618. data/bin/chown +0 -1
  619. data/bin/cp +0 -1
  620. data/bin/date +0 -1
  621. data/bin/dd +0 -1
  622. data/bin/df +0 -1
  623. data/bin/dmesg +0 -1
  624. data/bin/dnsdomainname +0 -1
  625. data/bin/dumpkmap +0 -1
  626. data/bin/echo +0 -1
  627. data/bin/ed +0 -1
  628. data/bin/egrep +0 -1
  629. data/bin/false +0 -1
  630. data/bin/fatattr +0 -1
  631. data/bin/fdflush +0 -1
  632. data/bin/fgrep +0 -1
  633. data/bin/fsync +0 -1
  634. data/bin/getopt +0 -1
  635. data/bin/grep +0 -1
  636. data/bin/gunzip +0 -1
  637. data/bin/gzip +0 -1
  638. data/bin/hostname +0 -1
  639. data/bin/ionice +0 -1
  640. data/bin/iostat +0 -1
  641. data/bin/ipcalc +0 -1
  642. data/bin/kbd_mode +0 -1
  643. data/bin/kill +0 -1
  644. data/bin/link +0 -1
  645. data/bin/linux32 +0 -1
  646. data/bin/linux64 +0 -1
  647. data/bin/ln +0 -1
  648. data/bin/login +0 -1
  649. data/bin/ls +0 -1
  650. data/bin/lsattr +0 -1
  651. data/bin/lzop +0 -1
  652. data/bin/makemime +0 -1
  653. data/bin/mkdir +0 -1
  654. data/bin/mknod +0 -1
  655. data/bin/mktemp +0 -1
  656. data/bin/more +0 -1
  657. data/bin/mount +0 -1
  658. data/bin/mountpoint +0 -1
  659. data/bin/mpstat +0 -1
  660. data/bin/mv +0 -1
  661. data/bin/netstat +0 -1
  662. data/bin/nice +0 -1
  663. data/bin/pidof +0 -0
  664. data/bin/ping +0 -1
  665. data/bin/ping6 +0 -1
  666. data/bin/pipe_progress +0 -1
  667. data/bin/printenv +0 -1
  668. data/bin/ps +0 -0
  669. data/bin/pwait +0 -0
  670. data/bin/pwd +0 -1
  671. data/bin/reformime +0 -1
  672. data/bin/rev +0 -1
  673. data/bin/rm +0 -1
  674. data/bin/rmdir +0 -1
  675. data/bin/run-parts +0 -1
  676. data/bin/sed +0 -1
  677. data/bin/setpriv +0 -1
  678. data/bin/setserial +0 -1
  679. data/bin/sh +0 -1
  680. data/bin/slabtop +0 -0
  681. data/bin/sleep +0 -1
  682. data/bin/stat +0 -1
  683. data/bin/stty +0 -1
  684. data/bin/su +0 -1
  685. data/bin/sync +0 -1
  686. data/bin/tar +0 -1
  687. data/bin/tload +0 -0
  688. data/bin/touch +0 -1
  689. data/bin/true +0 -1
  690. data/bin/umount +0 -1
  691. data/bin/uname +0 -1
  692. data/bin/usleep +0 -1
  693. data/bin/vmstat +0 -0
  694. data/bin/w +0 -0
  695. data/bin/watch +0 -0
  696. data/bin/zcat +0 -1
  697. data/lib/apk/db/installed +0 -3582
  698. data/lib/apk/db/lock +0 -0
  699. data/lib/apk/db/scripts.tar +0 -0
  700. data/lib/apk/db/triggers +0 -2
  701. data/lib/ld-musl-x86_64.so.1 +0 -0
  702. data/lib/libapk.so.3.12.0 +0 -0
  703. data/lib/libc.musl-x86_64.so.1 +0 -1
  704. data/lib/libcrypto.so.1.1 +0 -0
  705. data/lib/libprocps.so.8 +0 -1
  706. data/lib/libprocps.so.8.0.3 +0 -0
  707. data/lib/libssl.so.1.1 +0 -0
  708. data/lib/libz.so +0 -1
  709. data/lib/libz.so.1 +0 -1
  710. data/lib/libz.so.1.2.12 +0 -0
  711. data/lib/sysctl.d/00-alpine.conf +0 -40
@@ -0,0 +1,982 @@
1
+ # advanced_billing
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module AdvancedBilling
7
+ # SubscriptionComponentsController
8
+ class SubscriptionComponentsController < BaseController
9
+ # This request will list information regarding a specific component owned by
10
+ # a subscription.
11
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
12
+ # the subscription
13
+ # @param [Integer] component_id Required parameter: The Chargify id of the
14
+ # component. Alternatively, the component's handle prefixed by `handle:`
15
+ # @return [SubscriptionComponentResponse] response from the API call
16
+ def read_subscription_component(subscription_id,
17
+ component_id)
18
+ new_api_call_builder
19
+ .request(new_request_builder(HttpMethodEnum::GET,
20
+ '/subscriptions/{subscription_id}/components/{component_id}.json',
21
+ Server::DEFAULT)
22
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
23
+ .is_required(true)
24
+ .should_encode(true))
25
+ .template_param(new_parameter(component_id, key: 'component_id')
26
+ .is_required(true)
27
+ .should_encode(true))
28
+ .header_param(new_parameter('application/json', key: 'accept'))
29
+ .auth(Single.new('global')))
30
+ .response(new_response_handler
31
+ .deserializer(APIHelper.method(:custom_type_deserializer))
32
+ .deserialize_into(SubscriptionComponentResponse.method(:from_hash))
33
+ .local_error_template('404',
34
+ 'Not Found:\'{$response.body}\'',
35
+ APIException))
36
+ .execute
37
+ end
38
+
39
+ # This request will list a subscription's applied components.
40
+ # ## Archived Components
41
+ # When requesting to list components for a given subscription, if the
42
+ # subscription contains **archived** components they will be listed in the
43
+ # server response.
44
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
45
+ # the subscription
46
+ # @param [SubscriptionListDateField] date_field Optional parameter: The type
47
+ # of filter you'd like to apply to your search. Use in query
48
+ # `date_field=updated_at`.
49
+ # @param [SortingDirection] direction Optional parameter: Controls the order
50
+ # in which results are returned. Use in query `direction=asc`.
51
+ # @param [String] end_date Optional parameter: The end date (format
52
+ # YYYY-MM-DD) with which to filter the date_field. Returns components with a
53
+ # timestamp up to and including 11:59:59PM in your site’s time zone on the
54
+ # date specified.
55
+ # @param [String] end_datetime Optional parameter: The end date and time
56
+ # (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field. Returns
57
+ # components with a timestamp at or before exact time provided in query. You
58
+ # can specify timezone in query - otherwise your site''s time zone will be
59
+ # used. If provided, this parameter will be used instead of end_date.
60
+ # @param [IncludeNotNull] price_point_ids Optional parameter: Allows
61
+ # fetching components allocation only if price point id is present. Use in
62
+ # query `price_point_ids=not_null`.
63
+ # @param [Array[Integer]] product_family_ids Optional parameter: Allows
64
+ # fetching components allocation with matching product family id based on
65
+ # provided ids. Use in query `product_family_ids=1,2,3`.
66
+ # @param [ListSubscriptionComponentsSort] sort Optional parameter: The
67
+ # attribute by which to sort. Use in query `sort=updated_at`.
68
+ # @param [String] start_date Optional parameter: The start date (format
69
+ # YYYY-MM-DD) with which to filter the date_field. Returns components with a
70
+ # timestamp at or after midnight (12:00:00 AM) in your site’s time zone on
71
+ # the date specified.
72
+ # @param [String] start_datetime Optional parameter: The start date and time
73
+ # (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field. Returns
74
+ # components with a timestamp at or after exact time provided in query. You
75
+ # can specify timezone in query - otherwise your site''s time zone will be
76
+ # used. If provided, this parameter will be used instead of start_date.
77
+ # @param [ListSubscriptionComponentsInclude] include Optional parameter:
78
+ # Allows including additional data in the response. Use in query
79
+ # `include=subscription`.
80
+ # @param [TrueClass | FalseClass] filter_use_site_exchange_rate Optional
81
+ # parameter: Allows fetching components allocation with matching
82
+ # use_site_exchange_rate based on provided value. Use in query
83
+ # `filter[use_site_exchange_rate]=true`.
84
+ # @param [Array[String]] filter_currencies Optional parameter: Allows
85
+ # fetching components allocation with matching currency based on provided
86
+ # values. Use in query `filter[currencies]=EUR,USD`.
87
+ # @return [Array[SubscriptionComponentResponse]] response from the API call
88
+ def list_subscription_components(options = {})
89
+ new_api_call_builder
90
+ .request(new_request_builder(HttpMethodEnum::GET,
91
+ '/subscriptions/{subscription_id}/components.json',
92
+ Server::DEFAULT)
93
+ .template_param(new_parameter(options['subscription_id'], key: 'subscription_id')
94
+ .is_required(true)
95
+ .should_encode(true))
96
+ .query_param(new_parameter(options['date_field'], key: 'date_field'))
97
+ .query_param(new_parameter(options['direction'], key: 'direction'))
98
+ .query_param(new_parameter(options['end_date'], key: 'end_date'))
99
+ .query_param(new_parameter(options['end_datetime'], key: 'end_datetime'))
100
+ .query_param(new_parameter(options['price_point_ids'], key: 'price_point_ids'))
101
+ .query_param(new_parameter(options['product_family_ids'], key: 'product_family_ids'))
102
+ .query_param(new_parameter(options['sort'], key: 'sort'))
103
+ .query_param(new_parameter(options['start_date'], key: 'start_date'))
104
+ .query_param(new_parameter(options['start_datetime'], key: 'start_datetime'))
105
+ .query_param(new_parameter(options['include'], key: 'include'))
106
+ .query_param(new_parameter(options['filter_use_site_exchange_rate'], key: 'filter[use_site_exchange_rate]'))
107
+ .query_param(new_parameter(options['filter_currencies'], key: 'filter[currencies]'))
108
+ .header_param(new_parameter('application/json', key: 'accept'))
109
+ .auth(Single.new('global'))
110
+ .array_serialization_format(ArraySerializationFormat::CSV))
111
+ .response(new_response_handler
112
+ .deserializer(APIHelper.method(:custom_type_deserializer))
113
+ .deserialize_into(SubscriptionComponentResponse.method(:from_hash))
114
+ .is_response_array(true))
115
+ .execute
116
+ end
117
+
118
+ # Updates the price points on one or more of a subscription's components.
119
+ # The `price_point` key can take either a:
120
+ # 1. Price point id (integer)
121
+ # 2. Price point handle (string)
122
+ # 3. `"_default"` string, which will reset the price point to the
123
+ # component's current default price point.
124
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
125
+ # the subscription
126
+ # @param [BulkComponentSPricePointAssignment] body Optional parameter:
127
+ # Example:
128
+ # @return [BulkComponentSPricePointAssignment] response from the API call
129
+ def bulk_update_subscription_components_price_points(subscription_id,
130
+ body: nil)
131
+ new_api_call_builder
132
+ .request(new_request_builder(HttpMethodEnum::POST,
133
+ '/subscriptions/{subscription_id}/price_points.json',
134
+ Server::DEFAULT)
135
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
136
+ .is_required(true)
137
+ .should_encode(true))
138
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
139
+ .body_param(new_parameter(body))
140
+ .header_param(new_parameter('application/json', key: 'accept'))
141
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
142
+ .auth(Single.new('global')))
143
+ .response(new_response_handler
144
+ .deserializer(APIHelper.method(:custom_type_deserializer))
145
+ .deserialize_into(BulkComponentSPricePointAssignment.method(:from_hash))
146
+ .local_error_template('422',
147
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
148
+ ' Response: \'{$response.body}\'.',
149
+ ComponentPricePointErrorException))
150
+ .execute
151
+ end
152
+
153
+ # Resets all of a subscription's components to use the current default.
154
+ # **Note**: this will update the price point for all of the subscription's
155
+ # components, even ones that have not been allocated yet.
156
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
157
+ # the subscription
158
+ # @return [SubscriptionResponse] response from the API call
159
+ def bulk_reset_subscription_components_price_points(subscription_id)
160
+ new_api_call_builder
161
+ .request(new_request_builder(HttpMethodEnum::POST,
162
+ '/subscriptions/{subscription_id}/price_points/reset.json',
163
+ Server::DEFAULT)
164
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
165
+ .is_required(true)
166
+ .should_encode(true))
167
+ .header_param(new_parameter('application/json', key: 'accept'))
168
+ .auth(Single.new('global')))
169
+ .response(new_response_handler
170
+ .deserializer(APIHelper.method(:custom_type_deserializer))
171
+ .deserialize_into(SubscriptionResponse.method(:from_hash)))
172
+ .execute
173
+ end
174
+
175
+ # This endpoint creates a new allocation, setting the current allocated
176
+ # quantity for the Component and recording a memo.
177
+ # **Notice**: Allocations can only be updated for Quantity, On/Off, and
178
+ # Prepaid Components.
179
+ # ## Allocations Documentation
180
+ # Full documentation on how to record Allocations in the Chargify UI can be
181
+ # located
182
+ # [here](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527849997)
183
+ # . It is focused on how allocations operate within the Chargify UI.It goes
184
+ # into greater detail on how the user interface will react when recording
185
+ # allocations.
186
+ # This documentation also goes into greater detail on how proration is taken
187
+ # into consideration when applying component allocations.
188
+ # ## Proration Schemes
189
+ # Changing the allocated quantity of a component mid-period can result in
190
+ # either a Charge or Credit being applied to the subscription. When creating
191
+ # an allocation via the API, you can pass the `upgrade_charge`,
192
+ # `downgrade_credit`, and `accrue_charge` to be applied.
193
+ # **Notice:** These proration and accural fields will be ignored for Prepaid
194
+ # Components since this component type always generate charges immediately
195
+ # without proration.
196
+ # For background information on prorated components and upgrade/downgrade
197
+ # schemes, see [Setting Component
198
+ # Allocations.](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527
199
+ # 849997#proration-upgrades-vs-downgrades).
200
+ # See the tables below for valid values.
201
+ # | upgrade_charge | Definition
202
+ #            |
203
+ # |----------------|--------------------------------------------------------
204
+ # -----------|
205
+ # | `full`         | A charge is added for the full price of the component.
206
+ #            |
207
+ # | `prorated`     | A charge is added for the prorated price of the
208
+ # component change. |
209
+ # | `none`         | No charge is added.
210
+ #           |
211
+ # | downgrade_credit | Definition                                        |
212
+ # |------------------|---------------------------------------------------|
213
+ # | `full`           | A full price credit is added for the amount owed. |
214
+ # | `prorated`       | A prorated credit is added for the amount owed.   |
215
+ # | `none`           | No charge is added.                               |
216
+ # | accrue_charge | Definition
217
+ #                                                 |
218
+ # |---------------|---------------------------------------------------------
219
+ # ---------------------------------------------------|
220
+ # | `true`        | Attempt to charge the customer at next renewal.
221
+ # |
222
+ # | `false`       | Attempt to charge the customer right away. If it fails,
223
+ # the charge will be accrued until the next renewal. |
224
+ # ### Order of Resolution for upgrade_charge and downgrade_credit
225
+ # 1. Per allocation in API call (within a single allocation of the
226
+ # `allocations` array)
227
+ # 2. [Component-level default
228
+ # value](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527849997-
229
+ # Component-Allocations#component-allocations-0-0)
230
+ # 3. Allocation API call top level (outside of the `allocations` array)
231
+ # 4. [Site-level default
232
+ # value](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527849997#
233
+ # proration-schemes)
234
+ # ### Order of Resolution for accrue charge
235
+ # 1. Allocation API call top level (outside of the `allocations` array)
236
+ # 2. [Site-level default
237
+ # value](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527849997#
238
+ # proration-schemes)
239
+ # **NOTE: Proration uses the current price of the component as well as the
240
+ # current tax rates. Changes to either may cause the prorated charge/credit
241
+ # to be wrong.**
242
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
243
+ # the subscription
244
+ # @param [Integer] component_id Required parameter: The Chargify id of the
245
+ # component
246
+ # @param [CreateAllocationRequest] body Optional parameter: Example:
247
+ # @return [AllocationResponse] response from the API call
248
+ def allocate_component(subscription_id,
249
+ component_id,
250
+ body: nil)
251
+ new_api_call_builder
252
+ .request(new_request_builder(HttpMethodEnum::POST,
253
+ '/subscriptions/{subscription_id}/components/{component_id}/allocations.json',
254
+ Server::DEFAULT)
255
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
256
+ .is_required(true)
257
+ .should_encode(true))
258
+ .template_param(new_parameter(component_id, key: 'component_id')
259
+ .is_required(true)
260
+ .should_encode(true))
261
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
262
+ .body_param(new_parameter(body))
263
+ .header_param(new_parameter('application/json', key: 'accept'))
264
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
265
+ .auth(Single.new('global')))
266
+ .response(new_response_handler
267
+ .deserializer(APIHelper.method(:custom_type_deserializer))
268
+ .deserialize_into(AllocationResponse.method(:from_hash))
269
+ .local_error_template('422',
270
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
271
+ ' Response: \'{$response.body}\'.',
272
+ ErrorListResponseException))
273
+ .execute
274
+ end
275
+
276
+ # This endpoint returns the 50 most recent Allocations, ordered by most
277
+ # recent first.
278
+ # ## On/Off Components
279
+ # When a subscription's on/off component has been toggled to on (`1`) or off
280
+ # (`0`), usage will be logged in this response.
281
+ # ## Querying data via Chargify gem
282
+ # You can also query the current quantity via the [official Chargify
283
+ # Gem.](http://github.com/chargify/chargify_api_ares)
284
+ # ```# First way
285
+ # component = Chargify::Subscription::Component.find(1, :params =>
286
+ # {:subscription_id => 7})
287
+ # puts component.allocated_quantity
288
+ # # => 23
289
+ # # Second way
290
+ # component = Chargify::Subscription.find(7).component(1)
291
+ # puts component.allocated_quantity
292
+ # # => 23
293
+ # ```
294
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
295
+ # the subscription
296
+ # @param [Integer] component_id Required parameter: The Chargify id of the
297
+ # component
298
+ # @param [Integer] page Optional parameter: Result records are organized in
299
+ # pages. By default, the first page of results is displayed. The page
300
+ # parameter specifies a page number of results to fetch. You can start
301
+ # navigating through the pages to consume the results. You do this by
302
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
303
+ # the query string. If there are no results to return, then an empty result
304
+ # set will be returned. Use in query `page=1`.
305
+ # @return [Array[AllocationResponse]] response from the API call
306
+ def list_allocations(subscription_id,
307
+ component_id,
308
+ page: 1)
309
+ new_api_call_builder
310
+ .request(new_request_builder(HttpMethodEnum::GET,
311
+ '/subscriptions/{subscription_id}/components/{component_id}/allocations.json',
312
+ Server::DEFAULT)
313
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
314
+ .is_required(true)
315
+ .should_encode(true))
316
+ .template_param(new_parameter(component_id, key: 'component_id')
317
+ .is_required(true)
318
+ .should_encode(true))
319
+ .query_param(new_parameter(page, key: 'page'))
320
+ .header_param(new_parameter('application/json', key: 'accept'))
321
+ .auth(Single.new('global')))
322
+ .response(new_response_handler
323
+ .deserializer(APIHelper.method(:custom_type_deserializer))
324
+ .deserialize_into(AllocationResponse.method(:from_hash))
325
+ .is_response_array(true)
326
+ .local_error_template('404',
327
+ 'Not Found:\'{$response.body}\'',
328
+ APIException)
329
+ .local_error_template('422',
330
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
331
+ ' Response: \'{$response.body}\'.',
332
+ ErrorListResponseException))
333
+ .execute
334
+ end
335
+
336
+ # Creates multiple allocations, setting the current allocated quantity for
337
+ # each of the components and recording a memo. The charges and/or credits
338
+ # that are created will be rolled up into a single total which is used to
339
+ # determine whether this is an upgrade or a downgrade. Be aware of the Order
340
+ # of Resolutions explained below in determining the proration scheme.
341
+ # A `component_id` is required for each allocation.
342
+ # This endpoint only responds to JSON. It is not available for XML.
343
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
344
+ # the subscription
345
+ # @param [AllocateComponents] body Optional parameter: Example:
346
+ # @return [Array[AllocationResponse]] response from the API call
347
+ def allocate_components(subscription_id,
348
+ body: nil)
349
+ new_api_call_builder
350
+ .request(new_request_builder(HttpMethodEnum::POST,
351
+ '/subscriptions/{subscription_id}/allocations.json',
352
+ Server::DEFAULT)
353
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
354
+ .is_required(true)
355
+ .should_encode(true))
356
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
357
+ .body_param(new_parameter(body))
358
+ .header_param(new_parameter('application/json', key: 'accept'))
359
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
360
+ .auth(Single.new('global')))
361
+ .response(new_response_handler
362
+ .deserializer(APIHelper.method(:custom_type_deserializer))
363
+ .deserialize_into(AllocationResponse.method(:from_hash))
364
+ .is_response_array(true)
365
+ .local_error_template('404',
366
+ 'Not Found:\'{$response.body}\'',
367
+ APIException)
368
+ .local_error_template('422',
369
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
370
+ ' Response: \'{$response.body}\'.',
371
+ ErrorListResponseException))
372
+ .execute
373
+ end
374
+
375
+ # Chargify offers the ability to preview a potential subscription's
376
+ # **quantity-based** or **on/off** component allocation in the middle of the
377
+ # current billing period. This is useful if you want users to be able to
378
+ # see the effect of a component operation before actually doing it.
379
+ # ## Fine-grained Component Control: Use with multiple `upgrade_charge`s or
380
+ # `downgrade_credits`
381
+ # When the allocation uses multiple different types of `upgrade_charge`s or
382
+ # `downgrade_credit`s, the Allocation is viewed as an Allocation which uses
383
+ # "Fine-Grained Component Control". As a result, the response will not
384
+ # include `direction` and `proration` within the `allocation_preview`, but
385
+ # at the `line_items` and `allocations` level respectfully.
386
+ # See example below for Fine-Grained Component Control response.
387
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
388
+ # the subscription
389
+ # @param [PreviewAllocationsRequest] body Optional parameter: Example:
390
+ # @return [AllocationPreviewResponse] response from the API call
391
+ def preview_allocations(subscription_id,
392
+ body: nil)
393
+ new_api_call_builder
394
+ .request(new_request_builder(HttpMethodEnum::POST,
395
+ '/subscriptions/{subscription_id}/allocations/preview.json',
396
+ Server::DEFAULT)
397
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
398
+ .is_required(true)
399
+ .should_encode(true))
400
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
401
+ .body_param(new_parameter(body))
402
+ .header_param(new_parameter('application/json', key: 'accept'))
403
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
404
+ .auth(Single.new('global')))
405
+ .response(new_response_handler
406
+ .deserializer(APIHelper.method(:custom_type_deserializer))
407
+ .deserialize_into(AllocationPreviewResponse.method(:from_hash))
408
+ .local_error_template('422',
409
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
410
+ ' Response: \'{$response.body}\'.',
411
+ ComponentAllocationErrorException))
412
+ .execute
413
+ end
414
+
415
+ # When the expiration interval options are selected on a prepaid usage
416
+ # component price point, all allocations will be created with an expiration
417
+ # date. This expiration date can be changed after the fact to allow for
418
+ # extending or shortening the allocation's active window.
419
+ # In order to change a prepaid usage allocation's expiration date, a PUT
420
+ # call must be made to the allocation's endpoint with a new expiration date.
421
+ # ## Limitations
422
+ # A few limitations exist when changing an allocation's expiration date:
423
+ # - An expiration date can only be changed for an allocation that belongs to
424
+ # a price point with expiration interval options explicitly set.
425
+ # - An expiration date can be changed towards the future with no
426
+ # limitations.
427
+ # - An expiration date can be changed towards the past (essentially expiring
428
+ # it) up to the subscription's current period beginning date.
429
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
430
+ # the subscription
431
+ # @param [Integer] component_id Required parameter: The Chargify id of the
432
+ # component
433
+ # @param [Integer] allocation_id Required parameter: The Chargify id of the
434
+ # allocation
435
+ # @param [UpdateAllocationExpirationDate] body Optional parameter:
436
+ # Example:
437
+ # @return [void] response from the API call
438
+ def update_prepaid_usage_allocation_expiration_date(subscription_id,
439
+ component_id,
440
+ allocation_id,
441
+ body: nil)
442
+ new_api_call_builder
443
+ .request(new_request_builder(HttpMethodEnum::PUT,
444
+ '/subscriptions/{subscription_id}/components/{component_id}/allocations/{allocation_id}.json',
445
+ Server::DEFAULT)
446
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
447
+ .is_required(true)
448
+ .should_encode(true))
449
+ .template_param(new_parameter(component_id, key: 'component_id')
450
+ .is_required(true)
451
+ .should_encode(true))
452
+ .template_param(new_parameter(allocation_id, key: 'allocation_id')
453
+ .is_required(true)
454
+ .should_encode(true))
455
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
456
+ .body_param(new_parameter(body))
457
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
458
+ .auth(Single.new('global')))
459
+ .response(new_response_handler
460
+ .is_response_void(true)
461
+ .local_error_template('422',
462
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
463
+ ' Response: \'{$response.body}\'.',
464
+ SubscriptionComponentAllocationErrorException))
465
+ .execute
466
+ end
467
+
468
+ # Prepaid Usage components are unique in that their allocations are always
469
+ # additive. In order to reduce a subscription's allocated quantity for a
470
+ # prepaid usage component each allocation must be destroyed individually via
471
+ # this endpoint.
472
+ # ## Credit Scheme
473
+ # By default, destroying an allocation will generate a service credit on the
474
+ # subscription. This behavior can be modified with the optional
475
+ # `credit_scheme` parameter on this endpoint. The accepted values are:
476
+ # 1. `none`: The allocation will be destroyed and the balances will be
477
+ # updated but no service credit or refund will be created.
478
+ # 2. `credit`: The allocation will be destroyed and the balances will be
479
+ # updated and a service credit will be generated. This is also the default
480
+ # behavior if the `credit_scheme` param is not passed.
481
+ # 3. `refund`: The allocation will be destroyed and the balances will be
482
+ # updated and a refund will be issued along with a Credit Note.
483
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
484
+ # the subscription
485
+ # @param [Integer] component_id Required parameter: The Chargify id of the
486
+ # component
487
+ # @param [Integer] allocation_id Required parameter: The Chargify id of the
488
+ # allocation
489
+ # @param [CreditSchemeRequest] body Optional parameter: Example:
490
+ # @return [void] response from the API call
491
+ def delete_prepaid_usage_allocation(subscription_id,
492
+ component_id,
493
+ allocation_id,
494
+ body: nil)
495
+ new_api_call_builder
496
+ .request(new_request_builder(HttpMethodEnum::DELETE,
497
+ '/subscriptions/{subscription_id}/components/{component_id}/allocations/{allocation_id}.json',
498
+ Server::DEFAULT)
499
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
500
+ .is_required(true)
501
+ .should_encode(true))
502
+ .template_param(new_parameter(component_id, key: 'component_id')
503
+ .is_required(true)
504
+ .should_encode(true))
505
+ .template_param(new_parameter(allocation_id, key: 'allocation_id')
506
+ .is_required(true)
507
+ .should_encode(true))
508
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
509
+ .body_param(new_parameter(body))
510
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
511
+ .auth(Single.new('global')))
512
+ .response(new_response_handler
513
+ .is_response_void(true)
514
+ .local_error_template('422',
515
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
516
+ ' Response: \'{$response.body}\'.',
517
+ SubscriptionComponentAllocationErrorException))
518
+ .execute
519
+ end
520
+
521
+ # ## Documentation
522
+ # Full documentation on how to create Components in the Chargify UI can be
523
+ # located
524
+ # [here](https://maxio-chargify.zendesk.com/hc/en-us/articles/5405020625677#
525
+ # creating-components). Additionally, for information on how to record
526
+ # component usage against a subscription, please see the following
527
+ # resources:
528
+ # + [Recording Metered Component
529
+ # Usage](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527849997#
530
+ # reporting-metered-component-usage)
531
+ # + [Reporting Prepaid Component
532
+ # Status](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404527849997
533
+ # #reporting-prepaid-component-status)
534
+ # You may choose to report metered or prepaid usage to Chargify as often as
535
+ # you wish. You may report usage as it happens. You may also report usage
536
+ # periodically, such as each night or once per billing period. If usage
537
+ # events occur in your system very frequently (on the order of thousands of
538
+ # times an hour), it is best to accumulate usage into batches on your side,
539
+ # and then report those batches less frequently, such as daily. This will
540
+ # ensure you remain below any API throttling limits. If your use case
541
+ # requires higher rates of usage reporting, we recommend utilizing Events
542
+ # Based Components.
543
+ # ## Create Usage for Subscription
544
+ # This endpoint allows you to record an instance of metered or prepaid usage
545
+ # for a subscription. The `quantity` from usage for each component is
546
+ # accumulated to the `unit_balance` on the [Component Line
547
+ # Item](./b3A6MTQxMDgzNzQ-read-subscription-component) for the subscription.
548
+ # ## Price Point ID usage
549
+ # If you are using price points, for metered and prepaid usage components,
550
+ # Chargify gives you the option to specify a price point in your request.
551
+ # You do not need to specify a price point ID. If a price point is not
552
+ # included, the default price point for the component will be used when the
553
+ # usage is recorded.
554
+ # If an invalid `price_point_id` is submitted, the endpoint will return an
555
+ # error.
556
+ # ## Deducting Usage
557
+ # In the event that you need to reverse a previous usage report or otherwise
558
+ # deduct from the current usage balance, you may provide a negative
559
+ # quantity.
560
+ # Example:
561
+ # Previously recorded:
562
+ # ```json
563
+ # {
564
+ # "usage": {
565
+ # "quantity": 5000,
566
+ # "memo": "Recording 5000 units"
567
+ # }
568
+ # }
569
+ # ```
570
+ # At this point, `unit_balance` would be `5000`. To reduce the balance to
571
+ # `0`, POST the following payload:
572
+ # ```json
573
+ # {
574
+ # "usage": {
575
+ # "quantity": -5000,
576
+ # "memo": "Deducting 5000 units"
577
+ # }
578
+ # }
579
+ # ```
580
+ # The `unit_balance` has a floor of `0`; negative unit balances are never
581
+ # allowed. For example, if the usage balance is 100 and you deduct 200
582
+ # units, the unit balance would then be `0`, not `-100`.
583
+ # ## FAQ
584
+ # Q. Is it possible to record metered usage for more than one component at a
585
+ # time?
586
+ # A. No. Usage should be reported as one API call per component on a single
587
+ # subscription. For example, to record that a subscriber has sent both an
588
+ # SMS Message and an Email, send an API call for each.
589
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
590
+ # the subscription
591
+ # @param [Integer | String] component_id Required parameter: Either the
592
+ # Chargify id for the component or the component's handle prefixed by
593
+ # `handle:`
594
+ # @param [CreateUsageRequest] body Optional parameter: Example:
595
+ # @return [UsageResponse] response from the API call
596
+ def create_usage(subscription_id,
597
+ component_id,
598
+ body: nil)
599
+ new_api_call_builder
600
+ .request(new_request_builder(HttpMethodEnum::POST,
601
+ '/subscriptions/{subscription_id}/components/{component_id}/usages.json',
602
+ Server::DEFAULT)
603
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
604
+ .is_required(true)
605
+ .should_encode(true))
606
+ .template_param(new_parameter(component_id, key: 'component_id')
607
+ .is_required(true)
608
+ .should_encode(true)
609
+ .validator(proc do |value|
610
+ UnionTypeLookUp.get(:CreateUsageComponentId)
611
+ .validate(value)
612
+ end))
613
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
614
+ .body_param(new_parameter(body))
615
+ .header_param(new_parameter('application/json', key: 'accept'))
616
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
617
+ .auth(Single.new('global')))
618
+ .response(new_response_handler
619
+ .deserializer(APIHelper.method(:custom_type_deserializer))
620
+ .deserialize_into(UsageResponse.method(:from_hash))
621
+ .local_error_template('422',
622
+ 'HTTP Response Not OK. Status code: {$statusCode}.'\
623
+ ' Response: \'{$response.body}\'.',
624
+ ErrorListResponseException))
625
+ .execute
626
+ end
627
+
628
+ # This request will return a list of the usages associated with a
629
+ # subscription for a particular metered component. This will display the
630
+ # previously recorded components for a subscription.
631
+ # This endpoint is not compatible with quantity-based components.
632
+ # ## Since Date and Until Date Usage
633
+ # Note: The `since_date` and `until_date` attributes each default to
634
+ # midnight on the date specified. For example, in order to list usages for
635
+ # January 20th, you would need to append the following to the URL.
636
+ # ```
637
+ # ?since_date=2016-01-20&until_date=2016-01-21
638
+ # ```
639
+ # ## Read Usage by Handle
640
+ # Use this endpoint to read the previously recorded components for a
641
+ # subscription. You can now specify either the component id (integer) or
642
+ # the component handle prefixed by "handle:" to specify the unique
643
+ # identifier for the component you are working with.
644
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
645
+ # the subscription
646
+ # @param [Integer | String] component_id Required parameter: Either the
647
+ # Chargify id for the component or the component's handle prefixed by
648
+ # `handle:`
649
+ # @param [Integer] since_id Optional parameter: Returns usages with an id
650
+ # greater than or equal to the one specified
651
+ # @param [Integer] max_id Optional parameter: Returns usages with an id less
652
+ # than or equal to the one specified
653
+ # @param [Date] since_date Optional parameter: Returns usages with a
654
+ # created_at date greater than or equal to midnight (12:00 AM) on the date
655
+ # specified.
656
+ # @param [Date] until_date Optional parameter: Returns usages with a
657
+ # created_at date less than or equal to midnight (12:00 AM) on the date
658
+ # specified.
659
+ # @param [Integer] page Optional parameter: Result records are organized in
660
+ # pages. By default, the first page of results is displayed. The page
661
+ # parameter specifies a page number of results to fetch. You can start
662
+ # navigating through the pages to consume the results. You do this by
663
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
664
+ # the query string. If there are no results to return, then an empty result
665
+ # set will be returned. Use in query `page=1`.
666
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
667
+ # many records to fetch in each request. Default value is 20. The maximum
668
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
669
+ # Use in query `per_page=200`.
670
+ # @return [Array[UsageResponse]] response from the API call
671
+ def list_usages(options = {})
672
+ new_api_call_builder
673
+ .request(new_request_builder(HttpMethodEnum::GET,
674
+ '/subscriptions/{subscription_id}/components/{component_id}/usages.json',
675
+ Server::DEFAULT)
676
+ .template_param(new_parameter(options['subscription_id'], key: 'subscription_id')
677
+ .is_required(true)
678
+ .should_encode(true))
679
+ .template_param(new_parameter(options['component_id'], key: 'component_id')
680
+ .is_required(true)
681
+ .should_encode(true)
682
+ .validator(proc do |value|
683
+ UnionTypeLookUp.get(:ListUsagesInputComponentId)
684
+ .validate(value)
685
+ end))
686
+ .query_param(new_parameter(options['since_id'], key: 'since_id'))
687
+ .query_param(new_parameter(options['max_id'], key: 'max_id'))
688
+ .query_param(new_parameter(options['since_date'], key: 'since_date'))
689
+ .query_param(new_parameter(options['until_date'], key: 'until_date'))
690
+ .query_param(new_parameter(options['page'], key: 'page'))
691
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
692
+ .header_param(new_parameter('application/json', key: 'accept'))
693
+ .auth(Single.new('global')))
694
+ .response(new_response_handler
695
+ .deserializer(APIHelper.method(:custom_type_deserializer))
696
+ .deserialize_into(UsageResponse.method(:from_hash))
697
+ .is_response_array(true))
698
+ .execute
699
+ end
700
+
701
+ # In order to bill your subscribers on your Events data under the
702
+ # Events-Based Billing feature, the components must be activated for the
703
+ # subscriber.
704
+ # Learn more about the role of activation in the [Events-Based Billing
705
+ # docs](https://chargify.zendesk.com/hc/en-us/articles/4407720810907#activat
706
+ # ing-components-for-subscribers).
707
+ # Use this endpoint to activate an event-based component for a single
708
+ # subscription. Activating an event-based component causes Chargify to bill
709
+ # for events when the subscription is renewed.
710
+ # *Note: it is possible to stream events for a subscription at any time,
711
+ # regardless of component activation status. The activation status only
712
+ # determines if the subscription should be billed for event-based component
713
+ # usage at renewal.*
714
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
715
+ # the subscription
716
+ # @param [Integer] component_id Required parameter: The Chargify id of the
717
+ # component
718
+ # @return [void] response from the API call
719
+ def activate_event_based_component(subscription_id,
720
+ component_id)
721
+ new_api_call_builder
722
+ .request(new_request_builder(HttpMethodEnum::POST,
723
+ '/event_based_billing/subscriptions/{subscription_id}/components/{component_id}/activate.json',
724
+ Server::DEFAULT)
725
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
726
+ .is_required(true)
727
+ .should_encode(true))
728
+ .template_param(new_parameter(component_id, key: 'component_id')
729
+ .is_required(true)
730
+ .should_encode(true))
731
+ .auth(Single.new('global')))
732
+ .response(new_response_handler
733
+ .is_response_void(true))
734
+ .execute
735
+ end
736
+
737
+ # Use this endpoint to deactivate an event-based component for a single
738
+ # subscription. Deactivating the event-based component causes Chargify to
739
+ # ignore related events at subscription renewal.
740
+ # @param [Integer] subscription_id Required parameter: The Chargify id of
741
+ # the subscription
742
+ # @param [Integer] component_id Required parameter: The Chargify id of the
743
+ # component
744
+ # @return [void] response from the API call
745
+ def deactivate_event_based_component(subscription_id,
746
+ component_id)
747
+ new_api_call_builder
748
+ .request(new_request_builder(HttpMethodEnum::POST,
749
+ '/event_based_billing/subscriptions/{subscription_id}/components/{component_id}/deactivate.json',
750
+ Server::DEFAULT)
751
+ .template_param(new_parameter(subscription_id, key: 'subscription_id')
752
+ .is_required(true)
753
+ .should_encode(true))
754
+ .template_param(new_parameter(component_id, key: 'component_id')
755
+ .is_required(true)
756
+ .should_encode(true))
757
+ .auth(Single.new('global')))
758
+ .response(new_response_handler
759
+ .is_response_void(true))
760
+ .execute
761
+ end
762
+
763
+ # ## Documentation
764
+ # Events-Based Billing is an evolved form of metered billing that is based
765
+ # on data-rich events streamed in real-time from your system to Chargify.
766
+ # These events can then be transformed, enriched, or analyzed to form the
767
+ # computed totals of usage charges billed to your customers.
768
+ # This API allows you to stream events into the Chargify data ingestion
769
+ # engine.
770
+ # Learn more about the feature in general in the [Events-Based Billing help
771
+ # docs](https://chargify.zendesk.com/hc/en-us/articles/4407720613403).
772
+ # ## Record Event
773
+ # Use this endpoint to record a single event.
774
+ # *Note: this endpoint differs from the standard Chargify endpoints in that
775
+ # the URL subdomain will be `events` and your site subdomain will be
776
+ # included in the URL path. For example:*
777
+ # ```
778
+ # https://events.chargify.com/my-site-subdomain/events/my-stream-api-handle
779
+ # ```
780
+ # @param [String] subdomain Required parameter: Your site's subdomain
781
+ # @param [String] api_handle Required parameter: Identifies the Stream for
782
+ # which the event should be published.
783
+ # @param [String] store_uid Optional parameter: If you've attached your own
784
+ # Keen project as a Chargify event data-store, use this parameter to
785
+ # indicate the data-store.
786
+ # @param [EBBEvent] body Optional parameter: Example:
787
+ # @return [void] response from the API call
788
+ def record_event(subdomain,
789
+ api_handle,
790
+ store_uid: nil,
791
+ body: nil)
792
+ new_api_call_builder
793
+ .request(new_request_builder(HttpMethodEnum::POST,
794
+ '/{subdomain}/events/{api_handle}.json',
795
+ Server::DEFAULT)
796
+ .template_param(new_parameter(subdomain, key: 'subdomain')
797
+ .is_required(true)
798
+ .should_encode(true))
799
+ .template_param(new_parameter(api_handle, key: 'api_handle')
800
+ .is_required(true)
801
+ .should_encode(true))
802
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
803
+ .query_param(new_parameter(store_uid, key: 'store_uid'))
804
+ .body_param(new_parameter(body))
805
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
806
+ .auth(Single.new('global')))
807
+ .response(new_response_handler
808
+ .is_response_void(true))
809
+ .execute
810
+ end
811
+
812
+ # Use this endpoint to record a collection of events.
813
+ # *Note: this endpoint differs from the standard Chargify endpoints in that
814
+ # the subdomain will be `events` and your site subdomain will be included in
815
+ # the URL path.*
816
+ # A maximum of 1000 events can be published in a single request. A 422 will
817
+ # be returned if this limit is exceeded.
818
+ # @param [String] subdomain Required parameter: Your site's subdomain
819
+ # @param [String] api_handle Required parameter: Identifies the Stream for
820
+ # which the events should be published.
821
+ # @param [String] store_uid Optional parameter: If you've attached your own
822
+ # Keen project as a Chargify event data-store, use this parameter to
823
+ # indicate the data-store.
824
+ # @param [Array[EBBEvent]] body Optional parameter: Example:
825
+ # @return [void] response from the API call
826
+ def bulk_record_events(subdomain,
827
+ api_handle,
828
+ store_uid: nil,
829
+ body: nil)
830
+ new_api_call_builder
831
+ .request(new_request_builder(HttpMethodEnum::POST,
832
+ '/{subdomain}/events/{api_handle}/bulk.json',
833
+ Server::DEFAULT)
834
+ .template_param(new_parameter(subdomain, key: 'subdomain')
835
+ .is_required(true)
836
+ .should_encode(true))
837
+ .template_param(new_parameter(api_handle, key: 'api_handle')
838
+ .is_required(true)
839
+ .should_encode(true))
840
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
841
+ .query_param(new_parameter(store_uid, key: 'store_uid'))
842
+ .body_param(new_parameter(body))
843
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
844
+ .auth(Single.new('global')))
845
+ .response(new_response_handler
846
+ .is_response_void(true))
847
+ .execute
848
+ end
849
+
850
+ # This request will list components applied to each subscription.
851
+ # @param [Integer] page Optional parameter: Result records are organized in
852
+ # pages. By default, the first page of results is displayed. The page
853
+ # parameter specifies a page number of results to fetch. You can start
854
+ # navigating through the pages to consume the results. You do this by
855
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
856
+ # the query string. If there are no results to return, then an empty result
857
+ # set will be returned. Use in query `page=1`.
858
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
859
+ # many records to fetch in each request. Default value is 20. The maximum
860
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
861
+ # Use in query `per_page=200`.
862
+ # @param [ListSubscriptionComponentsSort] sort Optional parameter: The
863
+ # attribute by which to sort. Use in query: `sort=updated_at`.
864
+ # @param [SortingDirection] direction Optional parameter: Controls the order
865
+ # in which results are returned. Use in query `direction=asc`.
866
+ # @param [SubscriptionListDateField] date_field Optional parameter: The type
867
+ # of filter you'd like to apply to your search. Use in query:
868
+ # `date_field=updated_at`.
869
+ # @param [String] start_date Optional parameter: The start date (format
870
+ # YYYY-MM-DD) with which to filter the date_field. Returns components with a
871
+ # timestamp at or after midnight (12:00:00 AM) in your site’s time zone on
872
+ # the date specified. Use in query `start_date=2011-12-15`.
873
+ # @param [String] start_datetime Optional parameter: The start date and time
874
+ # (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field. Returns
875
+ # components with a timestamp at or after exact time provided in query. You
876
+ # can specify timezone in query - otherwise your site''s time zone will be
877
+ # used. If provided, this parameter will be used instead of start_date. Use
878
+ # in query `start_datetime=2022-07-01 09:00:05`.
879
+ # @param [String] end_date Optional parameter: The end date (format
880
+ # YYYY-MM-DD) with which to filter the date_field. Returns components with a
881
+ # timestamp up to and including 11:59:59PM in your site’s time zone on the
882
+ # date specified. Use in query `end_date=2011-12-16`.
883
+ # @param [String] end_datetime Optional parameter: The end date and time
884
+ # (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field. Returns
885
+ # components with a timestamp at or before exact time provided in query. You
886
+ # can specify timezone in query - otherwise your site''s time zone will be
887
+ # used. If provided, this parameter will be used instead of end_date. Use in
888
+ # query `end_datetime=2022-07-01 09:00:05`.
889
+ # @param [Array[Integer]] subscription_ids Optional parameter: Allows
890
+ # fetching components allocation with matching subscription id based on
891
+ # provided ids. Use in query `subscription_ids=1,2,3`.
892
+ # @param [IncludeNotNull] price_point_ids Optional parameter: Allows
893
+ # fetching components allocation only if price point id is present. Use in
894
+ # query `price_point_ids=not_null`.
895
+ # @param [Array[Integer]] product_family_ids Optional parameter: Allows
896
+ # fetching components allocation with matching product family id based on
897
+ # provided ids. Use in query `product_family_ids=1,2,3`.
898
+ # @param [ListSubscriptionComponentsInclude] include Optional parameter:
899
+ # Allows including additional data in the response. Use in query
900
+ # `include=subscription`.
901
+ # @param [TrueClass | FalseClass] filter_use_site_exchange_rate Optional
902
+ # parameter: Allows fetching components allocation with matching
903
+ # use_site_exchange_rate based on provided value. Use in query
904
+ # `filter[use_site_exchange_rate]=true`.
905
+ # @param [Array[String]] filter_currencies Optional parameter: Allows
906
+ # fetching components allocation with matching currency based on provided
907
+ # values. Use in query `filter[currencies]=USD,EUR`.
908
+ # @param [Array[SubscriptionStateFilter]] filter_subscription_states
909
+ # Optional parameter: Allows fetching components allocations that belong to
910
+ # the subscription with matching states based on provided values. To use
911
+ # this filter you also have to include the following param in the request
912
+ # `include=subscription`. Use in query
913
+ # `filter[subscription][states]=active,canceled&include=subscription`.
914
+ # @param [SubscriptionListDateField] filter_subscription_date_field Optional
915
+ # parameter: The type of filter you'd like to apply to your search. To use
916
+ # this filter you also have to include the following param in the request
917
+ # `include=subscription`.
918
+ # @param [String] filter_subscription_start_date Optional parameter: The
919
+ # start date (format YYYY-MM-DD) with which to filter the date_field.
920
+ # Returns components that belong to the subscription with a timestamp at or
921
+ # after midnight (12:00:00 AM) in your site’s time zone on the date
922
+ # specified. To use this filter you also have to include the following param
923
+ # in the request `include=subscription`.
924
+ # @param [String] filter_subscription_start_datetime Optional parameter: The
925
+ # start date and time (format YYYY-MM-DD HH:MM:SS) with which to filter the
926
+ # date_field. Returns components that belong to the subscription with a
927
+ # timestamp at or after exact time provided in query. You can specify
928
+ # timezone in query - otherwise your site''s time zone will be used. If
929
+ # provided, this parameter will be used instead of start_date. To use this
930
+ # filter you also have to include the following param in the request
931
+ # `include=subscription`.
932
+ # @param [String] filter_subscription_end_date Optional parameter: The end
933
+ # date (format YYYY-MM-DD) with which to filter the date_field. Returns
934
+ # components that belong to the subscription with a timestamp up to and
935
+ # including 11:59:59PM in your site’s time zone on the date specified. To
936
+ # use this filter you also have to include the following param in the
937
+ # request `include=subscription`.
938
+ # @param [String] filter_subscription_end_datetime Optional parameter: The
939
+ # end date and time (format YYYY-MM-DD HH:MM:SS) with which to filter the
940
+ # date_field. Returns components that belong to the subscription with a
941
+ # timestamp at or before exact time provided in query. You can specify
942
+ # timezone in query - otherwise your site''s time zone will be used. If
943
+ # provided, this parameter will be used instead of end_date. To use this
944
+ # filter you also have to include the following param in the request
945
+ # `include=subscription`.
946
+ # @return [ListSubscriptionComponentsResponse] response from the API call
947
+ def list_subscription_components_for_site(options = {})
948
+ new_api_call_builder
949
+ .request(new_request_builder(HttpMethodEnum::GET,
950
+ '/subscriptions_components.json',
951
+ Server::DEFAULT)
952
+ .query_param(new_parameter(options['page'], key: 'page'))
953
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
954
+ .query_param(new_parameter(options['sort'], key: 'sort'))
955
+ .query_param(new_parameter(options['direction'], key: 'direction'))
956
+ .query_param(new_parameter(options['date_field'], key: 'date_field'))
957
+ .query_param(new_parameter(options['start_date'], key: 'start_date'))
958
+ .query_param(new_parameter(options['start_datetime'], key: 'start_datetime'))
959
+ .query_param(new_parameter(options['end_date'], key: 'end_date'))
960
+ .query_param(new_parameter(options['end_datetime'], key: 'end_datetime'))
961
+ .query_param(new_parameter(options['subscription_ids'], key: 'subscription_ids'))
962
+ .query_param(new_parameter(options['price_point_ids'], key: 'price_point_ids'))
963
+ .query_param(new_parameter(options['product_family_ids'], key: 'product_family_ids'))
964
+ .query_param(new_parameter(options['include'], key: 'include'))
965
+ .query_param(new_parameter(options['filter_use_site_exchange_rate'], key: 'filter[use_site_exchange_rate]'))
966
+ .query_param(new_parameter(options['filter_currencies'], key: 'filter[currencies]'))
967
+ .query_param(new_parameter(options['filter_subscription_states'], key: 'filter[subscription][states]'))
968
+ .query_param(new_parameter(options['filter_subscription_date_field'], key: 'filter[subscription][date_field]'))
969
+ .query_param(new_parameter(options['filter_subscription_start_date'], key: 'filter[subscription][start_date]'))
970
+ .query_param(new_parameter(options['filter_subscription_start_datetime'], key: 'filter[subscription][start_datetime]'))
971
+ .query_param(new_parameter(options['filter_subscription_end_date'], key: 'filter[subscription][end_date]'))
972
+ .query_param(new_parameter(options['filter_subscription_end_datetime'], key: 'filter[subscription][end_datetime]'))
973
+ .header_param(new_parameter('application/json', key: 'accept'))
974
+ .auth(Single.new('global'))
975
+ .array_serialization_format(ArraySerializationFormat::CSV))
976
+ .response(new_response_handler
977
+ .deserializer(APIHelper.method(:custom_type_deserializer))
978
+ .deserialize_into(ListSubscriptionComponentsResponse.method(:from_hash)))
979
+ .execute
980
+ end
981
+ end
982
+ end