maxio-advanced-billing-sdk 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (710) 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 +443 -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/agreement_acceptance.rb +117 -0
  74. data/lib/advanced_billing/models/allocate_components.rb +151 -0
  75. data/lib/advanced_billing/models/allocation.rb +340 -0
  76. data/lib/advanced_billing/models/allocation_expiration_date.rb +50 -0
  77. data/lib/advanced_billing/models/allocation_preview.rb +197 -0
  78. data/lib/advanced_billing/models/allocation_preview_direction.rb +23 -0
  79. data/lib/advanced_billing/models/allocation_preview_item.rb +272 -0
  80. data/lib/advanced_billing/models/allocation_preview_line_item.rb +135 -0
  81. data/lib/advanced_billing/models/allocation_preview_line_item_kind.rb +29 -0
  82. data/lib/advanced_billing/models/allocation_preview_response.rb +49 -0
  83. data/lib/advanced_billing/models/allocation_response.rb +50 -0
  84. data/lib/advanced_billing/models/allocation_settings.rb +79 -0
  85. data/lib/advanced_billing/models/applied_credit_note_data.rb +60 -0
  86. data/lib/advanced_billing/models/apply_credit_note_event_data.rb +198 -0
  87. data/lib/advanced_billing/models/apply_debit_note_event_data.rb +111 -0
  88. data/lib/advanced_billing/models/apply_payment_event_data.rb +150 -0
  89. data/lib/advanced_billing/models/attribute_error.rb +48 -0
  90. data/lib/advanced_billing/models/auto_invite.rb +23 -0
  91. data/lib/advanced_billing/models/auto_resume.rb +61 -0
  92. data/lib/advanced_billing/models/bank_account_attributes.rb +175 -0
  93. data/lib/advanced_billing/models/bank_account_holder_type.rb +23 -0
  94. data/lib/advanced_billing/models/bank_account_payment_profile.rb +310 -0
  95. data/lib/advanced_billing/models/bank_account_response.rb +49 -0
  96. data/lib/advanced_billing/models/bank_account_type.rb +23 -0
  97. data/lib/advanced_billing/models/bank_account_vault.rb +32 -0
  98. data/lib/advanced_billing/models/bank_account_verification.rb +62 -0
  99. data/lib/advanced_billing/models/bank_account_verification_request.rb +50 -0
  100. data/lib/advanced_billing/models/base_model.rb +62 -0
  101. data/lib/advanced_billing/models/base_refund_error.rb +50 -0
  102. data/lib/advanced_billing/models/base_string_error.rb +50 -0
  103. data/lib/advanced_billing/models/basic_date_field.rb +23 -0
  104. data/lib/advanced_billing/models/batch_job.rb +94 -0
  105. data/lib/advanced_billing/models/batch_job_response.rb +48 -0
  106. data/lib/advanced_billing/models/billing_address.rb +107 -0
  107. data/lib/advanced_billing/models/billing_manifest.rb +147 -0
  108. data/lib/advanced_billing/models/billing_manifest_item.rb +189 -0
  109. data/lib/advanced_billing/models/billing_manifest_line_item_kind.rb +35 -0
  110. data/lib/advanced_billing/models/billing_schedule.rb +55 -0
  111. data/lib/advanced_billing/models/breakouts.rb +84 -0
  112. data/lib/advanced_billing/models/bulk_component_s_price_point_assignment.rb +59 -0
  113. data/lib/advanced_billing/models/bulk_create_product_price_points_request.rb +57 -0
  114. data/lib/advanced_billing/models/bulk_create_product_price_points_response.rb +59 -0
  115. data/lib/advanced_billing/models/bulk_create_segments.rb +59 -0
  116. data/lib/advanced_billing/models/bulk_update_segments.rb +59 -0
  117. data/lib/advanced_billing/models/bulk_update_segments_item.rb +80 -0
  118. data/lib/advanced_billing/models/calendar_billing.rb +79 -0
  119. data/lib/advanced_billing/models/cancel_grouped_subscriptions_request.rb +51 -0
  120. data/lib/advanced_billing/models/cancellation_method.rb +33 -0
  121. data/lib/advanced_billing/models/cancellation_options.rb +63 -0
  122. data/lib/advanced_billing/models/cancellation_request.rb +48 -0
  123. data/lib/advanced_billing/models/card_type.rb +125 -0
  124. data/lib/advanced_billing/models/change_invoice_collection_method_event_data.rb +81 -0
  125. data/lib/advanced_billing/models/chargify_ebb.rb +116 -0
  126. data/lib/advanced_billing/models/cleanup_scope.rb +26 -0
  127. data/lib/advanced_billing/models/collection_method.rb +32 -0
  128. data/lib/advanced_billing/models/component.rb +495 -0
  129. data/lib/advanced_billing/models/component_allocation_change.rb +147 -0
  130. data/lib/advanced_billing/models/component_allocation_error_item.rb +80 -0
  131. data/lib/advanced_billing/models/component_cost_data.rb +128 -0
  132. data/lib/advanced_billing/models/component_cost_data_rate_tier.rb +94 -0
  133. data/lib/advanced_billing/models/component_currency_price.rb +102 -0
  134. data/lib/advanced_billing/models/component_currency_prices_response.rb +57 -0
  135. data/lib/advanced_billing/models/component_custom_price.rb +96 -0
  136. data/lib/advanced_billing/models/component_kind.rb +32 -0
  137. data/lib/advanced_billing/models/component_price.rb +127 -0
  138. data/lib/advanced_billing/models/component_price_point.rb +302 -0
  139. data/lib/advanced_billing/models/component_price_point_error_item.rb +70 -0
  140. data/lib/advanced_billing/models/component_price_point_item.rb +119 -0
  141. data/lib/advanced_billing/models/component_price_point_response.rb +48 -0
  142. data/lib/advanced_billing/models/component_price_points_response.rb +69 -0
  143. data/lib/advanced_billing/models/component_response.rb +48 -0
  144. data/lib/advanced_billing/models/component_s_price_point_assignment.rb +72 -0
  145. data/lib/advanced_billing/models/compounding_strategy.rb +23 -0
  146. data/lib/advanced_billing/models/consolidated_invoice.rb +59 -0
  147. data/lib/advanced_billing/models/count_response.rb +50 -0
  148. data/lib/advanced_billing/models/coupon.rb +384 -0
  149. data/lib/advanced_billing/models/coupon_currency.rb +80 -0
  150. data/lib/advanced_billing/models/coupon_currency_request.rb +57 -0
  151. data/lib/advanced_billing/models/coupon_currency_response.rb +59 -0
  152. data/lib/advanced_billing/models/coupon_response.rb +50 -0
  153. data/lib/advanced_billing/models/coupon_restriction.rb +92 -0
  154. data/lib/advanced_billing/models/coupon_subcodes.rb +50 -0
  155. data/lib/advanced_billing/models/coupon_subcodes_response.rb +71 -0
  156. data/lib/advanced_billing/models/coupon_usage.rb +118 -0
  157. data/lib/advanced_billing/models/create_allocation.rb +198 -0
  158. data/lib/advanced_billing/models/create_allocation_request.rb +48 -0
  159. data/lib/advanced_billing/models/create_component_price_point.rb +163 -0
  160. data/lib/advanced_billing/models/create_component_price_point_request.rb +64 -0
  161. data/lib/advanced_billing/models/create_component_price_points_request.rb +64 -0
  162. data/lib/advanced_billing/models/create_currency_price.rb +70 -0
  163. data/lib/advanced_billing/models/create_currency_prices_request.rb +57 -0
  164. data/lib/advanced_billing/models/create_customer.rb +221 -0
  165. data/lib/advanced_billing/models/create_customer_request.rb +48 -0
  166. data/lib/advanced_billing/models/create_ebb_component.rb +49 -0
  167. data/lib/advanced_billing/models/create_invoice.rb +168 -0
  168. data/lib/advanced_billing/models/create_invoice_address.rb +130 -0
  169. data/lib/advanced_billing/models/create_invoice_coupon.rb +117 -0
  170. data/lib/advanced_billing/models/create_invoice_item.rb +192 -0
  171. data/lib/advanced_billing/models/create_invoice_payment.rb +92 -0
  172. data/lib/advanced_billing/models/create_invoice_payment_application.rb +58 -0
  173. data/lib/advanced_billing/models/create_invoice_payment_request.rb +59 -0
  174. data/lib/advanced_billing/models/create_invoice_request.rb +48 -0
  175. data/lib/advanced_billing/models/create_invoice_status.rb +23 -0
  176. data/lib/advanced_billing/models/create_metadata.rb +60 -0
  177. data/lib/advanced_billing/models/create_metadata_request.rb +57 -0
  178. data/lib/advanced_billing/models/create_metafield.rb +96 -0
  179. data/lib/advanced_billing/models/create_metafields_request.rb +64 -0
  180. data/lib/advanced_billing/models/create_metered_component.rb +49 -0
  181. data/lib/advanced_billing/models/create_multi_invoice_payment.rb +133 -0
  182. data/lib/advanced_billing/models/create_multi_invoice_payment_request.rb +48 -0
  183. data/lib/advanced_billing/models/create_offer.rb +117 -0
  184. data/lib/advanced_billing/models/create_offer_component.rb +61 -0
  185. data/lib/advanced_billing/models/create_offer_request.rb +48 -0
  186. data/lib/advanced_billing/models/create_on_off_component.rb +49 -0
  187. data/lib/advanced_billing/models/create_or_update_coupon.rb +86 -0
  188. data/lib/advanced_billing/models/create_or_update_flat_amount_coupon.rb +228 -0
  189. data/lib/advanced_billing/models/create_or_update_percentage_coupon.rb +229 -0
  190. data/lib/advanced_billing/models/create_or_update_product.rb +146 -0
  191. data/lib/advanced_billing/models/create_or_update_product_request.rb +48 -0
  192. data/lib/advanced_billing/models/create_or_update_segment_price.rb +88 -0
  193. data/lib/advanced_billing/models/create_payment.rb +77 -0
  194. data/lib/advanced_billing/models/create_payment_profile.rb +430 -0
  195. data/lib/advanced_billing/models/create_payment_profile_request.rb +49 -0
  196. data/lib/advanced_billing/models/create_prepaid_component.rb +49 -0
  197. data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +197 -0
  198. data/lib/advanced_billing/models/create_prepayment.rb +93 -0
  199. data/lib/advanced_billing/models/create_prepayment_request.rb +48 -0
  200. data/lib/advanced_billing/models/create_prepayment_response.rb +48 -0
  201. data/lib/advanced_billing/models/create_product_currency_price.rb +66 -0
  202. data/lib/advanced_billing/models/create_product_currency_prices_request.rb +57 -0
  203. data/lib/advanced_billing/models/create_product_family.rb +62 -0
  204. data/lib/advanced_billing/models/create_product_family_request.rb +49 -0
  205. data/lib/advanced_billing/models/create_product_price_point.rb +198 -0
  206. data/lib/advanced_billing/models/create_product_price_point_request.rb +48 -0
  207. data/lib/advanced_billing/models/create_quantity_based_component.rb +50 -0
  208. data/lib/advanced_billing/models/create_reason_code.rb +68 -0
  209. data/lib/advanced_billing/models/create_reason_code_request.rb +48 -0
  210. data/lib/advanced_billing/models/create_segment.rb +143 -0
  211. data/lib/advanced_billing/models/create_segment_request.rb +48 -0
  212. data/lib/advanced_billing/models/create_subscription.rb +749 -0
  213. data/lib/advanced_billing/models/create_subscription_component.rb +127 -0
  214. data/lib/advanced_billing/models/create_subscription_group.rb +75 -0
  215. data/lib/advanced_billing/models/create_subscription_group_request.rb +49 -0
  216. data/lib/advanced_billing/models/create_subscription_request.rb +48 -0
  217. data/lib/advanced_billing/models/create_usage.rb +88 -0
  218. data/lib/advanced_billing/models/create_usage_request.rb +48 -0
  219. data/lib/advanced_billing/models/created_prepayment.rb +117 -0
  220. data/lib/advanced_billing/models/credit_account_balance_changed.rb +122 -0
  221. data/lib/advanced_billing/models/credit_card_attributes.rb +72 -0
  222. data/lib/advanced_billing/models/credit_card_payment_profile.rb +306 -0
  223. data/lib/advanced_billing/models/credit_note.rb +417 -0
  224. data/lib/advanced_billing/models/credit_note1.rb +409 -0
  225. data/lib/advanced_billing/models/credit_note_application.rb +92 -0
  226. data/lib/advanced_billing/models/credit_note_line_item.rb +245 -0
  227. data/lib/advanced_billing/models/credit_note_status.rb +23 -0
  228. data/lib/advanced_billing/models/credit_scheme.rb +26 -0
  229. data/lib/advanced_billing/models/credit_scheme_request.rb +48 -0
  230. data/lib/advanced_billing/models/credit_type.rb +28 -0
  231. data/lib/advanced_billing/models/currency_price.rb +102 -0
  232. data/lib/advanced_billing/models/currency_price_role.rb +26 -0
  233. data/lib/advanced_billing/models/currency_prices_response.rb +57 -0
  234. data/lib/advanced_billing/models/current_vault.rb +99 -0
  235. data/lib/advanced_billing/models/custom_field_value_change.rb +148 -0
  236. data/lib/advanced_billing/models/customer.rb +358 -0
  237. data/lib/advanced_billing/models/customer1.rb +114 -0
  238. data/lib/advanced_billing/models/customer_attributes.rb +243 -0
  239. data/lib/advanced_billing/models/customer_billing_address_change.rb +60 -0
  240. data/lib/advanced_billing/models/customer_change.rb +83 -0
  241. data/lib/advanced_billing/models/customer_changes_preview_response.rb +48 -0
  242. data/lib/advanced_billing/models/customer_custom_fields_change.rb +78 -0
  243. data/lib/advanced_billing/models/customer_error.rb +60 -0
  244. data/lib/advanced_billing/models/customer_payer_change.rb +60 -0
  245. data/lib/advanced_billing/models/customer_response.rb +48 -0
  246. data/lib/advanced_billing/models/customer_shipping_address_change.rb +60 -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 +80 -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_event1.rb +399 -0
  293. data/lib/advanced_billing/models/invoice_event_type.rb +59 -0
  294. data/lib/advanced_billing/models/invoice_issued.rb +258 -0
  295. data/lib/advanced_billing/models/invoice_line_item.rb +332 -0
  296. data/lib/advanced_billing/models/invoice_line_item_component_cost_data.rb +69 -0
  297. data/lib/advanced_billing/models/invoice_line_item_event_data.rb +266 -0
  298. data/lib/advanced_billing/models/invoice_line_item_pricing_detail.rb +60 -0
  299. data/lib/advanced_billing/models/invoice_payer.rb +103 -0
  300. data/lib/advanced_billing/models/invoice_payment.rb +158 -0
  301. data/lib/advanced_billing/models/invoice_payment_application.rb +74 -0
  302. data/lib/advanced_billing/models/invoice_payment_method.rb +124 -0
  303. data/lib/advanced_billing/models/invoice_payment_method_type.rb +35 -0
  304. data/lib/advanced_billing/models/invoice_payment_type.rb +29 -0
  305. data/lib/advanced_billing/models/invoice_pre_payment.rb +75 -0
  306. data/lib/advanced_billing/models/invoice_previous_balance.rb +78 -0
  307. data/lib/advanced_billing/models/invoice_refund.rb +106 -0
  308. data/lib/advanced_billing/models/invoice_response.rb +48 -0
  309. data/lib/advanced_billing/models/invoice_role.rb +47 -0
  310. data/lib/advanced_billing/models/invoice_seller.rb +83 -0
  311. data/lib/advanced_billing/models/invoice_sort_field.rb +41 -0
  312. data/lib/advanced_billing/models/invoice_status.rb +37 -0
  313. data/lib/advanced_billing/models/invoice_tax.rb +172 -0
  314. data/lib/advanced_billing/models/invoice_tax_breakout.rb +71 -0
  315. data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +81 -0
  316. data/lib/advanced_billing/models/issue_advance_invoice_request.rb +50 -0
  317. data/lib/advanced_billing/models/issue_invoice_event_data.rb +136 -0
  318. data/lib/advanced_billing/models/issue_invoice_request.rb +63 -0
  319. data/lib/advanced_billing/models/issue_service_credit.rb +81 -0
  320. data/lib/advanced_billing/models/issue_service_credit_request.rb +49 -0
  321. data/lib/advanced_billing/models/item_category.rb +33 -0
  322. data/lib/advanced_billing/models/item_price_point_changed.rb +133 -0
  323. data/lib/advanced_billing/models/item_price_point_data.rb +70 -0
  324. data/lib/advanced_billing/models/line_item_kind.rb +47 -0
  325. data/lib/advanced_billing/models/line_item_transaction_type.rb +38 -0
  326. data/lib/advanced_billing/models/list_components_price_points_include.rb +20 -0
  327. data/lib/advanced_billing/models/list_components_price_points_response.rb +57 -0
  328. data/lib/advanced_billing/models/list_credit_notes_response.rb +57 -0
  329. data/lib/advanced_billing/models/list_events_date_field.rb +20 -0
  330. data/lib/advanced_billing/models/list_invoice_events_response.rb +89 -0
  331. data/lib/advanced_billing/models/list_invoices_response.rb +57 -0
  332. data/lib/advanced_billing/models/list_metafields_response.rb +99 -0
  333. data/lib/advanced_billing/models/list_mrr_response.rb +48 -0
  334. data/lib/advanced_billing/models/list_mrr_response_result.rb +120 -0
  335. data/lib/advanced_billing/models/list_offers_response.rb +59 -0
  336. data/lib/advanced_billing/models/list_product_price_points_response.rb +57 -0
  337. data/lib/advanced_billing/models/list_products_include.rb +20 -0
  338. data/lib/advanced_billing/models/list_products_price_points_include.rb +20 -0
  339. data/lib/advanced_billing/models/list_public_keys_meta.rb +80 -0
  340. data/lib/advanced_billing/models/list_public_keys_response.rb +69 -0
  341. data/lib/advanced_billing/models/list_sale_rep_item.rb +93 -0
  342. data/lib/advanced_billing/models/list_segments_response.rb +59 -0
  343. data/lib/advanced_billing/models/list_subcription_group_prepayment_item.rb +142 -0
  344. data/lib/advanced_billing/models/list_subscription_components_include.rb +20 -0
  345. data/lib/advanced_billing/models/list_subscription_components_response.rb +57 -0
  346. data/lib/advanced_billing/models/list_subscription_components_sort.rb +23 -0
  347. data/lib/advanced_billing/models/list_subscription_group_prepayment.rb +49 -0
  348. data/lib/advanced_billing/models/list_subscription_group_prepayment_date_field.rb +23 -0
  349. data/lib/advanced_billing/models/list_subscription_group_prepayment_response.rb +57 -0
  350. data/lib/advanced_billing/models/list_subscription_groups_item.rb +146 -0
  351. data/lib/advanced_billing/models/list_subscription_groups_meta.rb +60 -0
  352. data/lib/advanced_billing/models/list_subscription_groups_response.rb +69 -0
  353. data/lib/advanced_billing/models/metadata.rb +102 -0
  354. data/lib/advanced_billing/models/metafield.rb +124 -0
  355. data/lib/advanced_billing/models/metafield_input.rb +33 -0
  356. data/lib/advanced_billing/models/metafield_scope.rb +113 -0
  357. data/lib/advanced_billing/models/metered_component.rb +323 -0
  358. data/lib/advanced_billing/models/metered_usage.rb +135 -0
  359. data/lib/advanced_billing/models/movement.rb +143 -0
  360. data/lib/advanced_billing/models/movement_line_item.rb +148 -0
  361. data/lib/advanced_billing/models/mrr.rb +103 -0
  362. data/lib/advanced_billing/models/mrr_movement.rb +81 -0
  363. data/lib/advanced_billing/models/mrr_response.rb +48 -0
  364. data/lib/advanced_billing/models/multi_invoice_payment.rb +92 -0
  365. data/lib/advanced_billing/models/multi_invoice_payment_response.rb +48 -0
  366. data/lib/advanced_billing/models/nested_subscription_group.rb +94 -0
  367. data/lib/advanced_billing/models/net_terms.rb +95 -0
  368. data/lib/advanced_billing/models/offer.rb +266 -0
  369. data/lib/advanced_billing/models/offer_discount.rb +70 -0
  370. data/lib/advanced_billing/models/offer_item.rb +159 -0
  371. data/lib/advanced_billing/models/offer_response.rb +50 -0
  372. data/lib/advanced_billing/models/offer_signup_page.rb +100 -0
  373. data/lib/advanced_billing/models/on_off_component.rb +287 -0
  374. data/lib/advanced_billing/models/organization_address.rb +129 -0
  375. data/lib/advanced_billing/models/origin_invoice.rb +60 -0
  376. data/lib/advanced_billing/models/overage_pricing.rb +73 -0
  377. data/lib/advanced_billing/models/override_subscription.rb +134 -0
  378. data/lib/advanced_billing/models/override_subscription_request.rb +48 -0
  379. data/lib/advanced_billing/models/paginated_metadata.rb +99 -0
  380. data/lib/advanced_billing/models/pause_request.rb +50 -0
  381. data/lib/advanced_billing/models/payer_attributes.rb +223 -0
  382. data/lib/advanced_billing/models/payer_error.rb +70 -0
  383. data/lib/advanced_billing/models/payment.rb +82 -0
  384. data/lib/advanced_billing/models/payment_collection_method_changed.rb +80 -0
  385. data/lib/advanced_billing/models/payment_for_allocation.rb +91 -0
  386. data/lib/advanced_billing/models/payment_method_apple_pay_type.rb +60 -0
  387. data/lib/advanced_billing/models/payment_method_bank_account_type.rb +94 -0
  388. data/lib/advanced_billing/models/payment_method_credit_card_type.rb +117 -0
  389. data/lib/advanced_billing/models/payment_method_external_type.rb +105 -0
  390. data/lib/advanced_billing/models/payment_method_nested_data.rb +156 -0
  391. data/lib/advanced_billing/models/payment_method_nested_data1.rb +148 -0
  392. data/lib/advanced_billing/models/payment_method_paypal_type.rb +79 -0
  393. data/lib/advanced_billing/models/payment_profile_attributes.rb +370 -0
  394. data/lib/advanced_billing/models/payment_profile_response.rb +64 -0
  395. data/lib/advanced_billing/models/payment_related_events.rb +80 -0
  396. data/lib/advanced_billing/models/payment_response.rb +69 -0
  397. data/lib/advanced_billing/models/payment_type.rb +26 -0
  398. data/lib/advanced_billing/models/pending_cancellation_change.rb +80 -0
  399. data/lib/advanced_billing/models/portal_management_link.rb +104 -0
  400. data/lib/advanced_billing/models/prepaid_component_price_point.rb +107 -0
  401. data/lib/advanced_billing/models/prepaid_configuration.rb +105 -0
  402. data/lib/advanced_billing/models/prepaid_configuration_response.rb +49 -0
  403. data/lib/advanced_billing/models/prepaid_subscription_balance_changed.rb +111 -0
  404. data/lib/advanced_billing/models/prepaid_usage.rb +200 -0
  405. data/lib/advanced_billing/models/prepaid_usage_allocation_detail.rb +71 -0
  406. data/lib/advanced_billing/models/prepaid_usage_component.rb +358 -0
  407. data/lib/advanced_billing/models/prepayment.rb +137 -0
  408. data/lib/advanced_billing/models/prepayment_account_balance_changed.rb +109 -0
  409. data/lib/advanced_billing/models/prepayment_aggregated_error.rb +71 -0
  410. data/lib/advanced_billing/models/prepayment_method.rb +41 -0
  411. data/lib/advanced_billing/models/prepayment_response.rb +48 -0
  412. data/lib/advanced_billing/models/prepayments_response.rb +59 -0
  413. data/lib/advanced_billing/models/preview_allocations_request.rb +99 -0
  414. data/lib/advanced_billing/models/price.rb +99 -0
  415. data/lib/advanced_billing/models/price_point.rb +206 -0
  416. data/lib/advanced_billing/models/price_point_type.rb +30 -0
  417. data/lib/advanced_billing/models/pricing_scheme.rb +31 -0
  418. data/lib/advanced_billing/models/product.rb +547 -0
  419. data/lib/advanced_billing/models/product_family.rb +114 -0
  420. data/lib/advanced_billing/models/product_family_response.rb +50 -0
  421. data/lib/advanced_billing/models/product_price_point.rb +346 -0
  422. data/lib/advanced_billing/models/product_price_point_errors.rb +101 -0
  423. data/lib/advanced_billing/models/product_price_point_response.rb +48 -0
  424. data/lib/advanced_billing/models/product_response.rb +48 -0
  425. data/lib/advanced_billing/models/proforma_custom_field.rb +90 -0
  426. data/lib/advanced_billing/models/proforma_error.rb +51 -0
  427. data/lib/advanced_billing/models/proforma_invoice.rb +484 -0
  428. data/lib/advanced_billing/models/proforma_invoice_credit.rb +82 -0
  429. data/lib/advanced_billing/models/proforma_invoice_discount.rb +111 -0
  430. data/lib/advanced_billing/models/proforma_invoice_discount_breakout.rb +62 -0
  431. data/lib/advanced_billing/models/proforma_invoice_issued.rb +205 -0
  432. data/lib/advanced_billing/models/proforma_invoice_payment.rb +82 -0
  433. data/lib/advanced_billing/models/proforma_invoice_preview.rb +484 -0
  434. data/lib/advanced_billing/models/proforma_invoice_tax.rb +120 -0
  435. data/lib/advanced_billing/models/proforma_invoice_tax_breakout.rb +61 -0
  436. data/lib/advanced_billing/models/proration.rb +52 -0
  437. data/lib/advanced_billing/models/public_key.rb +71 -0
  438. data/lib/advanced_billing/models/public_signup_page.rb +84 -0
  439. data/lib/advanced_billing/models/quantity_based_component.rb +333 -0
  440. data/lib/advanced_billing/models/reactivate_subscription_group_request.rb +61 -0
  441. data/lib/advanced_billing/models/reactivate_subscription_group_response.rb +135 -0
  442. data/lib/advanced_billing/models/reactivate_subscription_request.rb +125 -0
  443. data/lib/advanced_billing/models/reactivation_billing.rb +56 -0
  444. data/lib/advanced_billing/models/reactivation_charge.rb +30 -0
  445. data/lib/advanced_billing/models/reason_code.rb +110 -0
  446. data/lib/advanced_billing/models/reason_code_response.rb +48 -0
  447. data/lib/advanced_billing/models/reason_codes_json_response.rb +50 -0
  448. data/lib/advanced_billing/models/record_payment_request.rb +48 -0
  449. data/lib/advanced_billing/models/recurring_scheme.rb +26 -0
  450. data/lib/advanced_billing/models/referral_code.rb +81 -0
  451. data/lib/advanced_billing/models/referral_validation_response.rb +50 -0
  452. data/lib/advanced_billing/models/refund.rb +128 -0
  453. data/lib/advanced_billing/models/refund_consolidated_invoice.rb +129 -0
  454. data/lib/advanced_billing/models/refund_invoice.rb +128 -0
  455. data/lib/advanced_billing/models/refund_invoice_event_data.rb +195 -0
  456. data/lib/advanced_billing/models/refund_invoice_request.rb +64 -0
  457. data/lib/advanced_billing/models/refund_prepayment.rb +108 -0
  458. data/lib/advanced_billing/models/refund_prepayment_aggregated_error.rb +50 -0
  459. data/lib/advanced_billing/models/refund_prepayment_base_refund_error.rb +50 -0
  460. data/lib/advanced_billing/models/refund_prepayment_request.rb +48 -0
  461. data/lib/advanced_billing/models/refund_success.rb +93 -0
  462. data/lib/advanced_billing/models/remove_payment_event_data.rb +155 -0
  463. data/lib/advanced_billing/models/renewal_preview.rb +161 -0
  464. data/lib/advanced_billing/models/renewal_preview_component.rb +93 -0
  465. data/lib/advanced_billing/models/renewal_preview_line_item.rb +189 -0
  466. data/lib/advanced_billing/models/renewal_preview_request.rb +62 -0
  467. data/lib/advanced_billing/models/renewal_preview_response.rb +49 -0
  468. data/lib/advanced_billing/models/replay_webhooks_request.rb +48 -0
  469. data/lib/advanced_billing/models/replay_webhooks_response.rb +50 -0
  470. data/lib/advanced_billing/models/resent_invitation.rb +83 -0
  471. data/lib/advanced_billing/models/resource_type.rb +23 -0
  472. data/lib/advanced_billing/models/restriction_type.rb +23 -0
  473. data/lib/advanced_billing/models/resume_options.rb +76 -0
  474. data/lib/advanced_billing/models/resumption_charge.rb +27 -0
  475. data/lib/advanced_billing/models/revoked_invitation.rb +72 -0
  476. data/lib/advanced_billing/models/sale_rep.rb +100 -0
  477. data/lib/advanced_billing/models/sale_rep_item_mrr.rb +70 -0
  478. data/lib/advanced_billing/models/sale_rep_settings.rb +113 -0
  479. data/lib/advanced_billing/models/sale_rep_subscription.rb +143 -0
  480. data/lib/advanced_billing/models/segment.rb +210 -0
  481. data/lib/advanced_billing/models/segment_price.rb +126 -0
  482. data/lib/advanced_billing/models/segment_response.rb +50 -0
  483. data/lib/advanced_billing/models/seller.rb +82 -0
  484. data/lib/advanced_billing/models/send_invoice_request.rb +73 -0
  485. data/lib/advanced_billing/models/service_credit.rb +92 -0
  486. data/lib/advanced_billing/models/service_credit_response.rb +48 -0
  487. data/lib/advanced_billing/models/service_credit_type.rb +23 -0
  488. data/lib/advanced_billing/models/shipping_address.rb +107 -0
  489. data/lib/advanced_billing/models/signup_proforma_preview.rb +62 -0
  490. data/lib/advanced_billing/models/signup_proforma_preview_response.rb +50 -0
  491. data/lib/advanced_billing/models/site.rb +220 -0
  492. data/lib/advanced_billing/models/site_response.rb +48 -0
  493. data/lib/advanced_billing/models/site_statistics.rb +174 -0
  494. data/lib/advanced_billing/models/site_summary.rb +90 -0
  495. data/lib/advanced_billing/models/snap_day.rb +21 -0
  496. data/lib/advanced_billing/models/sorting_direction.rb +23 -0
  497. data/lib/advanced_billing/models/subscription.rb +1014 -0
  498. data/lib/advanced_billing/models/subscription_component.rb +460 -0
  499. data/lib/advanced_billing/models/subscription_component_allocation_error_item.rb +60 -0
  500. data/lib/advanced_billing/models/subscription_component_response.rb +50 -0
  501. data/lib/advanced_billing/models/subscription_component_subscription.rb +197 -0
  502. data/lib/advanced_billing/models/subscription_custom_price.rb +212 -0
  503. data/lib/advanced_billing/models/subscription_date_field.rb +44 -0
  504. data/lib/advanced_billing/models/subscription_group.rb +96 -0
  505. data/lib/advanced_billing/models/subscription_group_balances.rb +82 -0
  506. data/lib/advanced_billing/models/subscription_group_bank_account.rb +216 -0
  507. data/lib/advanced_billing/models/subscription_group_component_custom_price.rb +96 -0
  508. data/lib/advanced_billing/models/subscription_group_credit_card.rb +273 -0
  509. data/lib/advanced_billing/models/subscription_group_customer.rb +90 -0
  510. data/lib/advanced_billing/models/subscription_group_item.rb +152 -0
  511. data/lib/advanced_billing/models/subscription_group_member_error.rb +70 -0
  512. data/lib/advanced_billing/models/subscription_group_payment_profile.rb +81 -0
  513. data/lib/advanced_billing/models/subscription_group_prepayment.rb +75 -0
  514. data/lib/advanced_billing/models/subscription_group_prepayment_method.rb +35 -0
  515. data/lib/advanced_billing/models/subscription_group_prepayment_request.rb +48 -0
  516. data/lib/advanced_billing/models/subscription_group_prepayment_response.rb +92 -0
  517. data/lib/advanced_billing/models/subscription_group_response.rb +49 -0
  518. data/lib/advanced_billing/models/subscription_group_signup.rb +154 -0
  519. data/lib/advanced_billing/models/subscription_group_signup_component.rb +110 -0
  520. data/lib/advanced_billing/models/subscription_group_signup_error.rb +112 -0
  521. data/lib/advanced_billing/models/subscription_group_signup_failure.rb +83 -0
  522. data/lib/advanced_billing/models/subscription_group_signup_failure_data.rb +140 -0
  523. data/lib/advanced_billing/models/subscription_group_signup_item.rb +197 -0
  524. data/lib/advanced_billing/models/subscription_group_signup_request.rb +49 -0
  525. data/lib/advanced_billing/models/subscription_group_signup_response.rb +171 -0
  526. data/lib/advanced_billing/models/subscription_group_signup_success.rb +81 -0
  527. data/lib/advanced_billing/models/subscription_group_signup_success_data.rb +125 -0
  528. data/lib/advanced_billing/models/subscription_group_subscription_error.rb +87 -0
  529. data/lib/advanced_billing/models/subscription_group_update_error.rb +59 -0
  530. data/lib/advanced_billing/models/subscription_include.rb +23 -0
  531. data/lib/advanced_billing/models/subscription_included_coupon.rb +115 -0
  532. data/lib/advanced_billing/models/subscription_list_date_field.rb +20 -0
  533. data/lib/advanced_billing/models/subscription_list_include.rb +20 -0
  534. data/lib/advanced_billing/models/subscription_migration_preview.rb +90 -0
  535. data/lib/advanced_billing/models/subscription_migration_preview_options.rb +163 -0
  536. data/lib/advanced_billing/models/subscription_migration_preview_request.rb +49 -0
  537. data/lib/advanced_billing/models/subscription_migration_preview_response.rb +48 -0
  538. data/lib/advanced_billing/models/subscription_mrr.rb +70 -0
  539. data/lib/advanced_billing/models/subscription_mrr_breakout.rb +59 -0
  540. data/lib/advanced_billing/models/subscription_mrr_response.rb +57 -0
  541. data/lib/advanced_billing/models/subscription_note.rb +101 -0
  542. data/lib/advanced_billing/models/subscription_note_response.rb +48 -0
  543. data/lib/advanced_billing/models/subscription_preview.rb +62 -0
  544. data/lib/advanced_billing/models/subscription_preview_response.rb +49 -0
  545. data/lib/advanced_billing/models/subscription_product_change.rb +81 -0
  546. data/lib/advanced_billing/models/subscription_product_migration.rb +152 -0
  547. data/lib/advanced_billing/models/subscription_product_migration_request.rb +48 -0
  548. data/lib/advanced_billing/models/subscription_purge_type.rb +23 -0
  549. data/lib/advanced_billing/models/subscription_response.rb +50 -0
  550. data/lib/advanced_billing/models/subscription_sort.rb +35 -0
  551. data/lib/advanced_billing/models/subscription_state.rb +118 -0
  552. data/lib/advanced_billing/models/subscription_state_change.rb +81 -0
  553. data/lib/advanced_billing/models/subscription_state_filter.rb +53 -0
  554. data/lib/advanced_billing/models/tax_configuration.rb +74 -0
  555. data/lib/advanced_billing/models/tax_configuration_kind.rb +29 -0
  556. data/lib/advanced_billing/models/tax_destination_address.rb +29 -0
  557. data/lib/advanced_billing/models/too_many_management_link_requests.rb +64 -0
  558. data/lib/advanced_billing/models/update_allocation_expiration_date.rb +50 -0
  559. data/lib/advanced_billing/models/update_component.rb +146 -0
  560. data/lib/advanced_billing/models/update_component_price_point.rb +141 -0
  561. data/lib/advanced_billing/models/update_component_price_point_request.rb +51 -0
  562. data/lib/advanced_billing/models/update_component_request.rb +48 -0
  563. data/lib/advanced_billing/models/update_coupon_currency.rb +57 -0
  564. data/lib/advanced_billing/models/update_currency_price.rb +57 -0
  565. data/lib/advanced_billing/models/update_currency_prices_request.rb +57 -0
  566. data/lib/advanced_billing/models/update_customer.rb +223 -0
  567. data/lib/advanced_billing/models/update_customer_request.rb +48 -0
  568. data/lib/advanced_billing/models/update_endpoint.rb +58 -0
  569. data/lib/advanced_billing/models/update_endpoint_request.rb +48 -0
  570. data/lib/advanced_billing/models/update_metadata.rb +70 -0
  571. data/lib/advanced_billing/models/update_metadata_request.rb +50 -0
  572. data/lib/advanced_billing/models/update_metafield.rb +106 -0
  573. data/lib/advanced_billing/models/update_metafields_request.rb +62 -0
  574. data/lib/advanced_billing/models/update_payment_profile.rb +194 -0
  575. data/lib/advanced_billing/models/update_payment_profile_request.rb +49 -0
  576. data/lib/advanced_billing/models/update_price.rb +109 -0
  577. data/lib/advanced_billing/models/update_product_price_point.rb +61 -0
  578. data/lib/advanced_billing/models/update_product_price_point_request.rb +48 -0
  579. data/lib/advanced_billing/models/update_reason_code.rb +70 -0
  580. data/lib/advanced_billing/models/update_reason_code_request.rb +48 -0
  581. data/lib/advanced_billing/models/update_segment.rb +73 -0
  582. data/lib/advanced_billing/models/update_segment_request.rb +48 -0
  583. data/lib/advanced_billing/models/update_subscription.rb +277 -0
  584. data/lib/advanced_billing/models/update_subscription_component.rb +61 -0
  585. data/lib/advanced_billing/models/update_subscription_group.rb +50 -0
  586. data/lib/advanced_billing/models/update_subscription_group_request.rb +49 -0
  587. data/lib/advanced_billing/models/update_subscription_note.rb +57 -0
  588. data/lib/advanced_billing/models/update_subscription_note_request.rb +48 -0
  589. data/lib/advanced_billing/models/update_subscription_request.rb +48 -0
  590. data/lib/advanced_billing/models/upsert_prepaid_configuration.rb +95 -0
  591. data/lib/advanced_billing/models/upsert_prepaid_configuration_request.rb +49 -0
  592. data/lib/advanced_billing/models/usage.rb +155 -0
  593. data/lib/advanced_billing/models/usage_response.rb +48 -0
  594. data/lib/advanced_billing/models/void_invoice.rb +48 -0
  595. data/lib/advanced_billing/models/void_invoice_event_data.rb +148 -0
  596. data/lib/advanced_billing/models/void_invoice_request.rb +48 -0
  597. data/lib/advanced_billing/models/void_remainder_event_data.rb +115 -0
  598. data/lib/advanced_billing/models/webhook.rb +173 -0
  599. data/lib/advanced_billing/models/webhook_order.rb +23 -0
  600. data/lib/advanced_billing/models/webhook_response.rb +50 -0
  601. data/lib/advanced_billing/models/webhook_status.rb +29 -0
  602. data/lib/advanced_billing/models/webhook_subscription.rb +124 -0
  603. data/lib/advanced_billing/utilities/date_time_helper.rb +11 -0
  604. data/lib/advanced_billing/utilities/file_wrapper.rb +16 -0
  605. data/lib/advanced_billing/utilities/union_type_lookup.rb +1098 -0
  606. data/lib/advanced_billing.rb +670 -0
  607. metadata +607 -105
  608. data/bin/arch +0 -1
  609. data/bin/ash +0 -1
  610. data/bin/base64 +0 -1
  611. data/bin/bbconfig +0 -1
  612. data/bin/busybox +0 -0
  613. data/bin/cat +0 -1
  614. data/bin/chattr +0 -1
  615. data/bin/chgrp +0 -1
  616. data/bin/chmod +0 -1
  617. data/bin/chown +0 -1
  618. data/bin/cp +0 -1
  619. data/bin/date +0 -1
  620. data/bin/dd +0 -1
  621. data/bin/df +0 -1
  622. data/bin/dmesg +0 -1
  623. data/bin/dnsdomainname +0 -1
  624. data/bin/dumpkmap +0 -1
  625. data/bin/echo +0 -1
  626. data/bin/ed +0 -1
  627. data/bin/egrep +0 -1
  628. data/bin/false +0 -1
  629. data/bin/fatattr +0 -1
  630. data/bin/fdflush +0 -1
  631. data/bin/fgrep +0 -1
  632. data/bin/fsync +0 -1
  633. data/bin/getopt +0 -1
  634. data/bin/grep +0 -1
  635. data/bin/gunzip +0 -1
  636. data/bin/gzip +0 -1
  637. data/bin/hostname +0 -1
  638. data/bin/ionice +0 -1
  639. data/bin/iostat +0 -1
  640. data/bin/ipcalc +0 -1
  641. data/bin/kbd_mode +0 -1
  642. data/bin/kill +0 -1
  643. data/bin/link +0 -1
  644. data/bin/linux32 +0 -1
  645. data/bin/linux64 +0 -1
  646. data/bin/ln +0 -1
  647. data/bin/login +0 -1
  648. data/bin/ls +0 -1
  649. data/bin/lsattr +0 -1
  650. data/bin/lzop +0 -1
  651. data/bin/makemime +0 -1
  652. data/bin/mkdir +0 -1
  653. data/bin/mknod +0 -1
  654. data/bin/mktemp +0 -1
  655. data/bin/more +0 -1
  656. data/bin/mount +0 -1
  657. data/bin/mountpoint +0 -1
  658. data/bin/mpstat +0 -1
  659. data/bin/mv +0 -1
  660. data/bin/netstat +0 -1
  661. data/bin/nice +0 -1
  662. data/bin/pidof +0 -0
  663. data/bin/ping +0 -1
  664. data/bin/ping6 +0 -1
  665. data/bin/pipe_progress +0 -1
  666. data/bin/printenv +0 -1
  667. data/bin/ps +0 -0
  668. data/bin/pwait +0 -0
  669. data/bin/pwd +0 -1
  670. data/bin/reformime +0 -1
  671. data/bin/rev +0 -1
  672. data/bin/rm +0 -1
  673. data/bin/rmdir +0 -1
  674. data/bin/run-parts +0 -1
  675. data/bin/sed +0 -1
  676. data/bin/setpriv +0 -1
  677. data/bin/setserial +0 -1
  678. data/bin/sh +0 -1
  679. data/bin/slabtop +0 -0
  680. data/bin/sleep +0 -1
  681. data/bin/stat +0 -1
  682. data/bin/stty +0 -1
  683. data/bin/su +0 -1
  684. data/bin/sync +0 -1
  685. data/bin/tar +0 -1
  686. data/bin/tload +0 -0
  687. data/bin/touch +0 -1
  688. data/bin/true +0 -1
  689. data/bin/umount +0 -1
  690. data/bin/uname +0 -1
  691. data/bin/usleep +0 -1
  692. data/bin/vmstat +0 -0
  693. data/bin/w +0 -0
  694. data/bin/watch +0 -0
  695. data/bin/zcat +0 -1
  696. data/lib/apk/db/installed +0 -3582
  697. data/lib/apk/db/lock +0 -0
  698. data/lib/apk/db/scripts.tar +0 -0
  699. data/lib/apk/db/triggers +0 -2
  700. data/lib/ld-musl-x86_64.so.1 +0 -0
  701. data/lib/libapk.so.3.12.0 +0 -0
  702. data/lib/libc.musl-x86_64.so.1 +0 -1
  703. data/lib/libcrypto.so.1.1 +0 -0
  704. data/lib/libprocps.so.8 +0 -1
  705. data/lib/libprocps.so.8.0.3 +0 -0
  706. data/lib/libssl.so.1.1 +0 -0
  707. data/lib/libz.so +0 -1
  708. data/lib/libz.so.1 +0 -1
  709. data/lib/libz.so.1.2.12 +0 -0
  710. 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 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 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(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 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