subtain-apimatic-sdk 4.1.1 → 9.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (711) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +28 -0
  3. data/README.md +377 -0
  4. data/lib/advanced_billing/api_helper.rb +10 -0
  5. data/lib/advanced_billing/client.rb +243 -0
  6. data/lib/advanced_billing/configuration.rb +158 -0
  7. data/lib/advanced_billing/controllers/advance_invoice_controller.rb +126 -0
  8. data/lib/advanced_billing/controllers/api_exports_controller.rb +268 -0
  9. data/lib/advanced_billing/controllers/base_controller.rb +71 -0
  10. data/lib/advanced_billing/controllers/billing_portal_controller.rb +165 -0
  11. data/lib/advanced_billing/controllers/components_controller.rb +747 -0
  12. data/lib/advanced_billing/controllers/coupons_controller.rb +691 -0
  13. data/lib/advanced_billing/controllers/custom_fields_controller.rb +465 -0
  14. data/lib/advanced_billing/controllers/customers_controller.rb +255 -0
  15. data/lib/advanced_billing/controllers/events_based_billing_segments_controller.rb +334 -0
  16. data/lib/advanced_billing/controllers/events_controller.rb +229 -0
  17. data/lib/advanced_billing/controllers/insights_controller.rb +168 -0
  18. data/lib/advanced_billing/controllers/invoices_controller.rb +953 -0
  19. data/lib/advanced_billing/controllers/offers_controller.rb +132 -0
  20. data/lib/advanced_billing/controllers/payment_profiles_controller.rb +732 -0
  21. data/lib/advanced_billing/controllers/product_families_controller.rb +187 -0
  22. data/lib/advanced_billing/controllers/product_price_points_controller.rb +422 -0
  23. data/lib/advanced_billing/controllers/products_controller.rb +220 -0
  24. data/lib/advanced_billing/controllers/proforma_invoices_controller.rb +381 -0
  25. data/lib/advanced_billing/controllers/reason_codes_controller.rb +158 -0
  26. data/lib/advanced_billing/controllers/referral_codes_controller.rb +42 -0
  27. data/lib/advanced_billing/controllers/sales_commissions_controller.rb +192 -0
  28. data/lib/advanced_billing/controllers/sites_controller.rb +96 -0
  29. data/lib/advanced_billing/controllers/subscription_components_controller.rb +992 -0
  30. data/lib/advanced_billing/controllers/subscription_group_invoice_account_controller.rb +163 -0
  31. data/lib/advanced_billing/controllers/subscription_group_status_controller.rb +157 -0
  32. data/lib/advanced_billing/controllers/subscription_groups_controller.rb +300 -0
  33. data/lib/advanced_billing/controllers/subscription_invoice_account_controller.rb +226 -0
  34. data/lib/advanced_billing/controllers/subscription_notes_controller.rb +159 -0
  35. data/lib/advanced_billing/controllers/subscription_products_controller.rb +166 -0
  36. data/lib/advanced_billing/controllers/subscription_status_controller.rb +473 -0
  37. data/lib/advanced_billing/controllers/subscriptions_controller.rb +1357 -0
  38. data/lib/advanced_billing/controllers/webhooks_controller.rb +210 -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_list_response_exception.rb +32 -0
  44. data/lib/advanced_billing/exceptions/error_map_response_exception.rb +32 -0
  45. data/lib/advanced_billing/exceptions/event_based_billing_list_segments_errors_exception.rb +32 -0
  46. data/lib/advanced_billing/exceptions/event_based_billing_segment_errors_exception.rb +35 -0
  47. data/lib/advanced_billing/exceptions/event_based_billing_segment_exception.rb +32 -0
  48. data/lib/advanced_billing/exceptions/nested_error_response_exception.rb +32 -0
  49. data/lib/advanced_billing/exceptions/proforma_bad_request_error_response_exception.rb +32 -0
  50. data/lib/advanced_billing/exceptions/refund_prepayment_aggregated_errors_response_exception.rb +33 -0
  51. data/lib/advanced_billing/exceptions/refund_prepayment_base_errors_response_exception.rb +32 -0
  52. data/lib/advanced_billing/exceptions/single_error_response_exception.rb +32 -0
  53. data/lib/advanced_billing/exceptions/single_string_error_response_exception.rb +32 -0
  54. data/lib/advanced_billing/exceptions/subscription_add_coupon_error_exception.rb +42 -0
  55. data/lib/advanced_billing/exceptions/subscription_component_allocation_error_exception.rb +41 -0
  56. data/lib/advanced_billing/exceptions/subscription_group_signup_error_response_exception.rb +32 -0
  57. data/lib/advanced_billing/exceptions/subscription_group_update_error_response_exception.rb +32 -0
  58. data/lib/advanced_billing/exceptions/subscription_remove_coupon_errors_exception.rb +32 -0
  59. data/lib/advanced_billing/exceptions/subscriptions_mrr_error_response_exception.rb +32 -0
  60. data/lib/advanced_billing/exceptions/too_many_management_link_requests_error_exception.rb +32 -0
  61. data/lib/advanced_billing/http/auth/basic_auth.rb +50 -0
  62. data/lib/advanced_billing/http/http_call_back.rb +10 -0
  63. data/lib/advanced_billing/http/http_method_enum.rb +10 -0
  64. data/lib/advanced_billing/http/http_request.rb +10 -0
  65. data/lib/advanced_billing/http/http_response.rb +10 -0
  66. data/lib/advanced_billing/models/account_balance.rb +51 -0
  67. data/lib/advanced_billing/models/account_balances.rb +81 -0
  68. data/lib/advanced_billing/models/ach_agreement.rb +96 -0
  69. data/lib/advanced_billing/models/activate_subscription_request.rb +57 -0
  70. data/lib/advanced_billing/models/add_coupons_request.rb +50 -0
  71. data/lib/advanced_billing/models/add_subscription_to_a_group.rb +62 -0
  72. data/lib/advanced_billing/models/agreement_acceptance.rb +125 -0
  73. data/lib/advanced_billing/models/allocate_components.rb +130 -0
  74. data/lib/advanced_billing/models/allocation.rb +231 -0
  75. data/lib/advanced_billing/models/allocation_expiration_date.rb +50 -0
  76. data/lib/advanced_billing/models/allocation_payment.rb +89 -0
  77. data/lib/advanced_billing/models/allocation_preview.rb +190 -0
  78. data/lib/advanced_billing/models/allocation_preview_item.rb +187 -0
  79. data/lib/advanced_billing/models/allocation_preview_line_item.rb +130 -0
  80. data/lib/advanced_billing/models/allocation_preview_response.rb +49 -0
  81. data/lib/advanced_billing/models/allocation_response.rb +50 -0
  82. data/lib/advanced_billing/models/allocation_settings.rb +74 -0
  83. data/lib/advanced_billing/models/applied_credit_note.rb +69 -0
  84. data/lib/advanced_billing/models/apply_credit_note_event_data.rb +174 -0
  85. data/lib/advanced_billing/models/apply_debit_note_event_data.rb +94 -0
  86. data/lib/advanced_billing/models/apply_payment_event_data.rb +130 -0
  87. data/lib/advanced_billing/models/attribute_error.rb +48 -0
  88. data/lib/advanced_billing/models/auto_invite.rb +23 -0
  89. data/lib/advanced_billing/models/auto_resume.rb +51 -0
  90. data/lib/advanced_billing/models/bank_account.rb +270 -0
  91. data/lib/advanced_billing/models/bank_account_attributes.rb +183 -0
  92. data/lib/advanced_billing/models/bank_account_payment_profile.rb +285 -0
  93. data/lib/advanced_billing/models/bank_account_response.rb +48 -0
  94. data/lib/advanced_billing/models/bank_account_type.rb +23 -0
  95. data/lib/advanced_billing/models/bank_account_vault.rb +32 -0
  96. data/lib/advanced_billing/models/bank_account_verification.rb +61 -0
  97. data/lib/advanced_billing/models/bank_account_verification_request.rb +50 -0
  98. data/lib/advanced_billing/models/base_model.rb +62 -0
  99. data/lib/advanced_billing/models/base_refund_error.rb +50 -0
  100. data/lib/advanced_billing/models/base_string_error.rb +50 -0
  101. data/lib/advanced_billing/models/basic_date_field.rb +23 -0
  102. data/lib/advanced_billing/models/batch_job.rb +91 -0
  103. data/lib/advanced_billing/models/batch_job_response.rb +48 -0
  104. data/lib/advanced_billing/models/billing_address.rb +113 -0
  105. data/lib/advanced_billing/models/billing_manifest.rb +142 -0
  106. data/lib/advanced_billing/models/billing_manifest_item.rb +182 -0
  107. data/lib/advanced_billing/models/breakouts.rb +82 -0
  108. data/lib/advanced_billing/models/bulk_component_s_price_point_assignment.rb +59 -0
  109. data/lib/advanced_billing/models/bulk_create_product_price_points_request.rb +57 -0
  110. data/lib/advanced_billing/models/bulk_create_product_price_points_response.rb +59 -0
  111. data/lib/advanced_billing/models/bulk_create_segments.rb +59 -0
  112. data/lib/advanced_billing/models/bulk_update_segments.rb +59 -0
  113. data/lib/advanced_billing/models/bulk_update_segments_item.rb +80 -0
  114. data/lib/advanced_billing/models/calendar_billing.rb +78 -0
  115. data/lib/advanced_billing/models/cancel_grouped_subscriptions_request.rb +51 -0
  116. data/lib/advanced_billing/models/cancellation_method.rb +30 -0
  117. data/lib/advanced_billing/models/cancellation_options.rb +62 -0
  118. data/lib/advanced_billing/models/cancellation_request.rb +48 -0
  119. data/lib/advanced_billing/models/card_type.rb +56 -0
  120. data/lib/advanced_billing/models/card_type1.rb +116 -0
  121. data/lib/advanced_billing/models/change_invoice_collection_method_event_data.rb +71 -0
  122. data/lib/advanced_billing/models/chargify_ebb.rb +113 -0
  123. data/lib/advanced_billing/models/cleanup_scope.rb +26 -0
  124. data/lib/advanced_billing/models/component.rb +405 -0
  125. data/lib/advanced_billing/models/component_allocation_change.rb +142 -0
  126. data/lib/advanced_billing/models/component_allocation_error_item.rb +77 -0
  127. data/lib/advanced_billing/models/component_cost_data.rb +135 -0
  128. data/lib/advanced_billing/models/component_cost_data_rate_tier.rb +101 -0
  129. data/lib/advanced_billing/models/component_custom_price.rb +81 -0
  130. data/lib/advanced_billing/models/component_kind.rb +32 -0
  131. data/lib/advanced_billing/models/component_kind_path.rb +32 -0
  132. data/lib/advanced_billing/models/component_price.rb +123 -0
  133. data/lib/advanced_billing/models/component_price_point.rb +192 -0
  134. data/lib/advanced_billing/models/component_price_point_error_item.rb +68 -0
  135. data/lib/advanced_billing/models/component_price_point_item.rb +98 -0
  136. data/lib/advanced_billing/models/component_price_point_price.rb +123 -0
  137. data/lib/advanced_billing/models/component_price_point_response.rb +48 -0
  138. data/lib/advanced_billing/models/component_price_points_response.rb +59 -0
  139. data/lib/advanced_billing/models/component_response.rb +48 -0
  140. data/lib/advanced_billing/models/component_s_price_point_assignment.rb +71 -0
  141. data/lib/advanced_billing/models/compounding_strategy.rb +23 -0
  142. data/lib/advanced_billing/models/consolidated_invoice.rb +59 -0
  143. data/lib/advanced_billing/models/count_response.rb +50 -0
  144. data/lib/advanced_billing/models/coupon.rb +367 -0
  145. data/lib/advanced_billing/models/coupon_currency.rb +77 -0
  146. data/lib/advanced_billing/models/coupon_currency_request.rb +57 -0
  147. data/lib/advanced_billing/models/coupon_response.rb +50 -0
  148. data/lib/advanced_billing/models/coupon_restriction.rb +99 -0
  149. data/lib/advanced_billing/models/coupon_subcodes.rb +50 -0
  150. data/lib/advanced_billing/models/coupon_subcodes_response.rb +70 -0
  151. data/lib/advanced_billing/models/coupon_usage.rb +114 -0
  152. data/lib/advanced_billing/models/create_allocation.rb +162 -0
  153. data/lib/advanced_billing/models/create_allocation_request.rb +48 -0
  154. data/lib/advanced_billing/models/create_component_price_point.rb +125 -0
  155. data/lib/advanced_billing/models/create_component_price_point_request.rb +64 -0
  156. data/lib/advanced_billing/models/create_component_price_points_request.rb +64 -0
  157. data/lib/advanced_billing/models/create_currency_price.rb +68 -0
  158. data/lib/advanced_billing/models/create_currency_prices_request.rb +57 -0
  159. data/lib/advanced_billing/models/create_customer.rb +209 -0
  160. data/lib/advanced_billing/models/create_customer_request.rb +48 -0
  161. data/lib/advanced_billing/models/create_ebb_component.rb +65 -0
  162. data/lib/advanced_billing/models/create_invoice.rb +163 -0
  163. data/lib/advanced_billing/models/create_invoice_address.rb +124 -0
  164. data/lib/advanced_billing/models/create_invoice_coupon.rb +115 -0
  165. data/lib/advanced_billing/models/create_invoice_item.rb +185 -0
  166. data/lib/advanced_billing/models/create_invoice_payment.rb +90 -0
  167. data/lib/advanced_billing/models/create_invoice_payment_application.rb +79 -0
  168. data/lib/advanced_billing/models/create_invoice_payment_request.rb +58 -0
  169. data/lib/advanced_billing/models/create_invoice_request.rb +48 -0
  170. data/lib/advanced_billing/models/create_metadata.rb +59 -0
  171. data/lib/advanced_billing/models/create_metadata_request.rb +57 -0
  172. data/lib/advanced_billing/models/create_metafield.rb +103 -0
  173. data/lib/advanced_billing/models/create_metafields_request.rb +64 -0
  174. data/lib/advanced_billing/models/create_metered_component.rb +65 -0
  175. data/lib/advanced_billing/models/create_multi_invoice_payment.rb +134 -0
  176. data/lib/advanced_billing/models/create_multi_invoice_payment_request.rb +48 -0
  177. data/lib/advanced_billing/models/create_offer.rb +116 -0
  178. data/lib/advanced_billing/models/create_offer_component.rb +60 -0
  179. data/lib/advanced_billing/models/create_offer_request.rb +48 -0
  180. data/lib/advanced_billing/models/create_on_off_component.rb +65 -0
  181. data/lib/advanced_billing/models/create_or_update_coupon.rb +85 -0
  182. data/lib/advanced_billing/models/create_or_update_flat_amount_coupon.rb +214 -0
  183. data/lib/advanced_billing/models/create_or_update_percentage_coupon.rb +215 -0
  184. data/lib/advanced_billing/models/create_or_update_product.rb +133 -0
  185. data/lib/advanced_billing/models/create_or_update_product_request.rb +48 -0
  186. data/lib/advanced_billing/models/create_or_update_segment_price.rb +87 -0
  187. data/lib/advanced_billing/models/create_payment.rb +75 -0
  188. data/lib/advanced_billing/models/create_payment_profile.rb +416 -0
  189. data/lib/advanced_billing/models/create_payment_profile_request.rb +49 -0
  190. data/lib/advanced_billing/models/create_payment_profile_response.rb +49 -0
  191. data/lib/advanced_billing/models/create_prepaid_component.rb +65 -0
  192. data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +194 -0
  193. data/lib/advanced_billing/models/create_prepayment.rb +90 -0
  194. data/lib/advanced_billing/models/create_prepayment_request.rb +48 -0
  195. data/lib/advanced_billing/models/create_prepayment_response.rb +48 -0
  196. data/lib/advanced_billing/models/create_product_currency_price.rb +64 -0
  197. data/lib/advanced_billing/models/create_product_currency_prices_request.rb +57 -0
  198. data/lib/advanced_billing/models/create_product_family.rb +61 -0
  199. data/lib/advanced_billing/models/create_product_family_request.rb +49 -0
  200. data/lib/advanced_billing/models/create_product_price_point.rb +182 -0
  201. data/lib/advanced_billing/models/create_product_price_point_request.rb +48 -0
  202. data/lib/advanced_billing/models/create_quantity_based_component.rb +66 -0
  203. data/lib/advanced_billing/models/create_reason_code.rb +66 -0
  204. data/lib/advanced_billing/models/create_reason_code_request.rb +48 -0
  205. data/lib/advanced_billing/models/create_segment.rb +143 -0
  206. data/lib/advanced_billing/models/create_segment_request.rb +48 -0
  207. data/lib/advanced_billing/models/create_subscription.rb +694 -0
  208. data/lib/advanced_billing/models/create_subscription_component.rb +122 -0
  209. data/lib/advanced_billing/models/create_subscription_group.rb +74 -0
  210. data/lib/advanced_billing/models/create_subscription_group_request.rb +49 -0
  211. data/lib/advanced_billing/models/create_subscription_request.rb +48 -0
  212. data/lib/advanced_billing/models/create_usage.rb +72 -0
  213. data/lib/advanced_billing/models/create_usage_request.rb +48 -0
  214. data/lib/advanced_billing/models/created_payment_profile.rb +327 -0
  215. data/lib/advanced_billing/models/created_prepayment.rb +114 -0
  216. data/lib/advanced_billing/models/credit_account_balance_changed.rb +120 -0
  217. data/lib/advanced_billing/models/credit_card_attributes.rb +81 -0
  218. data/lib/advanced_billing/models/credit_card_payment_profile.rb +277 -0
  219. data/lib/advanced_billing/models/credit_note.rb +403 -0
  220. data/lib/advanced_billing/models/credit_note1.rb +405 -0
  221. data/lib/advanced_billing/models/credit_note_application.rb +99 -0
  222. data/lib/advanced_billing/models/credit_note_line_item.rb +246 -0
  223. data/lib/advanced_billing/models/credit_scheme.rb +26 -0
  224. data/lib/advanced_billing/models/credit_scheme_request.rb +48 -0
  225. data/lib/advanced_billing/models/credit_type.rb +27 -0
  226. data/lib/advanced_billing/models/credit_type1.rb +28 -0
  227. data/lib/advanced_billing/models/currency_price.rb +99 -0
  228. data/lib/advanced_billing/models/currency_price_role.rb +26 -0
  229. data/lib/advanced_billing/models/current_vault.rb +99 -0
  230. data/lib/advanced_billing/models/custom_field_value_change.rb +144 -0
  231. data/lib/advanced_billing/models/custom_price_used_for_subscription_create_update.rb +197 -0
  232. data/lib/advanced_billing/models/customer.rb +352 -0
  233. data/lib/advanced_billing/models/customer1.rb +120 -0
  234. data/lib/advanced_billing/models/customer_attributes.rb +241 -0
  235. data/lib/advanced_billing/models/customer_billing_address_change.rb +59 -0
  236. data/lib/advanced_billing/models/customer_change.rb +81 -0
  237. data/lib/advanced_billing/models/customer_changes_preview_response.rb +48 -0
  238. data/lib/advanced_billing/models/customer_custom_fields_change.rb +77 -0
  239. data/lib/advanced_billing/models/customer_error.rb +60 -0
  240. data/lib/advanced_billing/models/customer_payer_change.rb +59 -0
  241. data/lib/advanced_billing/models/customer_response.rb +48 -0
  242. data/lib/advanced_billing/models/customer_shipping_address_change.rb +59 -0
  243. data/lib/advanced_billing/models/deduct_service_credit.rb +80 -0
  244. data/lib/advanced_billing/models/deduct_service_credit_request.rb +48 -0
  245. data/lib/advanced_billing/models/delayed_cancellation_response.rb +50 -0
  246. data/lib/advanced_billing/models/delete_subscription_group_response.rb +59 -0
  247. data/lib/advanced_billing/models/direction.rb +23 -0
  248. data/lib/advanced_billing/models/discount_type.rb +23 -0
  249. data/lib/advanced_billing/models/dunner_data.rb +131 -0
  250. data/lib/advanced_billing/models/dunning_step_data.rb +149 -0
  251. data/lib/advanced_billing/models/dunning_step_reached.rb +96 -0
  252. data/lib/advanced_billing/models/ebb_component.rb +271 -0
  253. data/lib/advanced_billing/models/ebb_event.rb +50 -0
  254. data/lib/advanced_billing/models/enable_webhooks_request.rb +49 -0
  255. data/lib/advanced_billing/models/enable_webhooks_response.rb +51 -0
  256. data/lib/advanced_billing/models/endpoint.rb +88 -0
  257. data/lib/advanced_billing/models/endpoint_response.rb +50 -0
  258. data/lib/advanced_billing/models/errors.rb +59 -0
  259. data/lib/advanced_billing/models/event.rb +145 -0
  260. data/lib/advanced_billing/models/event_based_billing_segment_error.rb +51 -0
  261. data/lib/advanced_billing/models/event_response.rb +48 -0
  262. data/lib/advanced_billing/models/event_type.rb +121 -0
  263. data/lib/advanced_billing/models/extended_interval_unit.rb +26 -0
  264. data/lib/advanced_billing/models/failed_payment_action.rb +37 -0
  265. data/lib/advanced_billing/models/first_charge_type.rb +26 -0
  266. data/lib/advanced_billing/models/full_subscription_group_response.rb +165 -0
  267. data/lib/advanced_billing/models/get_one_time_token_payment_profile.rb +249 -0
  268. data/lib/advanced_billing/models/get_one_time_token_request.rb +49 -0
  269. data/lib/advanced_billing/models/group_billing.rb +85 -0
  270. data/lib/advanced_billing/models/group_settings.rb +76 -0
  271. data/lib/advanced_billing/models/group_target.rb +75 -0
  272. data/lib/advanced_billing/models/group_target_type.rb +32 -0
  273. data/lib/advanced_billing/models/holder_type.rb +23 -0
  274. data/lib/advanced_billing/models/include_not_null.rb +20 -0
  275. data/lib/advanced_billing/models/include_option.rb +23 -0
  276. data/lib/advanced_billing/models/interval_unit.rb +23 -0
  277. data/lib/advanced_billing/models/invoice.rb +712 -0
  278. data/lib/advanced_billing/models/invoice_address.rb +113 -0
  279. data/lib/advanced_billing/models/invoice_balance_item.rb +79 -0
  280. data/lib/advanced_billing/models/invoice_consolidation_level.rb +34 -0
  281. data/lib/advanced_billing/models/invoice_credit.rb +121 -0
  282. data/lib/advanced_billing/models/invoice_custom_field.rb +88 -0
  283. data/lib/advanced_billing/models/invoice_customer.rb +121 -0
  284. data/lib/advanced_billing/models/invoice_date_field.rb +32 -0
  285. data/lib/advanced_billing/models/invoice_discount.rb +177 -0
  286. data/lib/advanced_billing/models/invoice_discount_breakout.rb +80 -0
  287. data/lib/advanced_billing/models/invoice_display_settings.rb +75 -0
  288. data/lib/advanced_billing/models/invoice_event.rb +102 -0
  289. data/lib/advanced_billing/models/invoice_event1.rb +374 -0
  290. data/lib/advanced_billing/models/invoice_event_type.rb +50 -0
  291. data/lib/advanced_billing/models/invoice_issued.rb +252 -0
  292. data/lib/advanced_billing/models/invoice_line_item.rb +321 -0
  293. data/lib/advanced_billing/models/invoice_line_item_component_cost_data.rb +69 -0
  294. data/lib/advanced_billing/models/invoice_line_item_event_data.rb +262 -0
  295. data/lib/advanced_billing/models/invoice_line_item_pricing_detail.rb +69 -0
  296. data/lib/advanced_billing/models/invoice_payer.rb +109 -0
  297. data/lib/advanced_billing/models/invoice_payment.rb +155 -0
  298. data/lib/advanced_billing/models/invoice_payment_application.rb +73 -0
  299. data/lib/advanced_billing/models/invoice_payment_method.rb +129 -0
  300. data/lib/advanced_billing/models/invoice_payment_method_type.rb +35 -0
  301. data/lib/advanced_billing/models/invoice_payment_type.rb +29 -0
  302. data/lib/advanced_billing/models/invoice_previous_balance.rb +78 -0
  303. data/lib/advanced_billing/models/invoice_refund.rb +113 -0
  304. data/lib/advanced_billing/models/invoice_response.rb +48 -0
  305. data/lib/advanced_billing/models/invoice_seller.rb +90 -0
  306. data/lib/advanced_billing/models/invoice_sort_field.rb +41 -0
  307. data/lib/advanced_billing/models/invoice_tax.rb +176 -0
  308. data/lib/advanced_billing/models/invoice_tax_breakout.rb +79 -0
  309. data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +89 -0
  310. data/lib/advanced_billing/models/issue_advance_invoice_request.rb +50 -0
  311. data/lib/advanced_billing/models/issue_invoice_event_data.rb +115 -0
  312. data/lib/advanced_billing/models/issue_invoice_request.rb +63 -0
  313. data/lib/advanced_billing/models/issue_service_credit.rb +80 -0
  314. data/lib/advanced_billing/models/issue_service_credit_request.rb +49 -0
  315. data/lib/advanced_billing/models/item_category.rb +33 -0
  316. data/lib/advanced_billing/models/item_price_point_changed.rb +134 -0
  317. data/lib/advanced_billing/models/item_price_point_data.rb +78 -0
  318. data/lib/advanced_billing/models/list_components_price_points_include.rb +20 -0
  319. data/lib/advanced_billing/models/list_components_price_points_response.rb +57 -0
  320. data/lib/advanced_billing/models/list_credit_notes_response.rb +57 -0
  321. data/lib/advanced_billing/models/list_events_date_field.rb +20 -0
  322. data/lib/advanced_billing/models/list_invoice_events_response.rb +87 -0
  323. data/lib/advanced_billing/models/list_invoices_response.rb +57 -0
  324. data/lib/advanced_billing/models/list_metafields_response.rb +96 -0
  325. data/lib/advanced_billing/models/list_mrr_response.rb +48 -0
  326. data/lib/advanced_billing/models/list_mrr_response_result.rb +116 -0
  327. data/lib/advanced_billing/models/list_offers_response.rb +59 -0
  328. data/lib/advanced_billing/models/list_payment_profile_item.rb +274 -0
  329. data/lib/advanced_billing/models/list_payment_profiles_response.rb +51 -0
  330. data/lib/advanced_billing/models/list_product_price_points_response.rb +57 -0
  331. data/lib/advanced_billing/models/list_products_include.rb +20 -0
  332. data/lib/advanced_billing/models/list_products_price_points_include.rb +20 -0
  333. data/lib/advanced_billing/models/list_public_keys_meta.rb +78 -0
  334. data/lib/advanced_billing/models/list_public_keys_response.rb +68 -0
  335. data/lib/advanced_billing/models/list_sale_rep_item.rb +90 -0
  336. data/lib/advanced_billing/models/list_segments_response.rb +59 -0
  337. data/lib/advanced_billing/models/list_subcription_group_prepayment_item.rb +137 -0
  338. data/lib/advanced_billing/models/list_subscription_components_include.rb +20 -0
  339. data/lib/advanced_billing/models/list_subscription_components_response.rb +57 -0
  340. data/lib/advanced_billing/models/list_subscription_components_sort.rb +23 -0
  341. data/lib/advanced_billing/models/list_subscription_group_prepayment.rb +49 -0
  342. data/lib/advanced_billing/models/list_subscription_group_prepayment_date_field.rb +23 -0
  343. data/lib/advanced_billing/models/list_subscription_group_prepayment_response.rb +57 -0
  344. data/lib/advanced_billing/models/list_subscription_groups_item.rb +141 -0
  345. data/lib/advanced_billing/models/list_subscription_groups_meta.rb +59 -0
  346. data/lib/advanced_billing/models/list_subscription_groups_response.rb +68 -0
  347. data/lib/advanced_billing/models/metadata.rb +98 -0
  348. data/lib/advanced_billing/models/metafield.rb +112 -0
  349. data/lib/advanced_billing/models/metafield_input.rb +32 -0
  350. data/lib/advanced_billing/models/metafield_scope.rb +119 -0
  351. data/lib/advanced_billing/models/metafields.rb +103 -0
  352. data/lib/advanced_billing/models/metafields1.rb +103 -0
  353. data/lib/advanced_billing/models/metered_component.rb +294 -0
  354. data/lib/advanced_billing/models/metered_usage.rb +132 -0
  355. data/lib/advanced_billing/models/movement.rb +138 -0
  356. data/lib/advanced_billing/models/movement_line_item.rb +143 -0
  357. data/lib/advanced_billing/models/mrr.rb +100 -0
  358. data/lib/advanced_billing/models/mrr_movement.rb +79 -0
  359. data/lib/advanced_billing/models/mrr_response.rb +48 -0
  360. data/lib/advanced_billing/models/multi_invoice_payment.rb +90 -0
  361. data/lib/advanced_billing/models/multi_invoice_payment_response.rb +48 -0
  362. data/lib/advanced_billing/models/net_terms.rb +94 -0
  363. data/lib/advanced_billing/models/offer.rb +254 -0
  364. data/lib/advanced_billing/models/offer_discount.rb +68 -0
  365. data/lib/advanced_billing/models/offer_item.rb +130 -0
  366. data/lib/advanced_billing/models/offer_response.rb +50 -0
  367. data/lib/advanced_billing/models/offer_signup_page.rb +96 -0
  368. data/lib/advanced_billing/models/on_off_component.rb +291 -0
  369. data/lib/advanced_billing/models/organization_address.rb +123 -0
  370. data/lib/advanced_billing/models/origin_invoice.rb +69 -0
  371. data/lib/advanced_billing/models/overage_pricing.rb +87 -0
  372. data/lib/advanced_billing/models/override_subscription.rb +100 -0
  373. data/lib/advanced_billing/models/override_subscription_request.rb +48 -0
  374. data/lib/advanced_billing/models/paginated_metadata.rb +96 -0
  375. data/lib/advanced_billing/models/pause_request.rb +50 -0
  376. data/lib/advanced_billing/models/payer_attributes.rb +221 -0
  377. data/lib/advanced_billing/models/payer_error.rb +68 -0
  378. data/lib/advanced_billing/models/payment.rb +80 -0
  379. data/lib/advanced_billing/models/payment_collection_method.rb +32 -0
  380. data/lib/advanced_billing/models/payment_collection_method1.rb +30 -0
  381. data/lib/advanced_billing/models/payment_collection_method_changed.rb +79 -0
  382. data/lib/advanced_billing/models/payment_method_apple_pay_type.rb +60 -0
  383. data/lib/advanced_billing/models/payment_method_bank_account_type.rb +81 -0
  384. data/lib/advanced_billing/models/payment_method_credit_card_type.rb +101 -0
  385. data/lib/advanced_billing/models/payment_method_external_type.rb +87 -0
  386. data/lib/advanced_billing/models/payment_method_nested_data.rb +150 -0
  387. data/lib/advanced_billing/models/payment_method_paypal_type.rb +69 -0
  388. data/lib/advanced_billing/models/payment_profile.rb +287 -0
  389. data/lib/advanced_billing/models/payment_profile_attributes.rb +356 -0
  390. data/lib/advanced_billing/models/payment_profile_response.rb +49 -0
  391. data/lib/advanced_billing/models/payment_related_events.rb +79 -0
  392. data/lib/advanced_billing/models/payment_response.rb +68 -0
  393. data/lib/advanced_billing/models/payment_type.rb +26 -0
  394. data/lib/advanced_billing/models/pending_cancellation_change.rb +79 -0
  395. data/lib/advanced_billing/models/portal_management_link.rb +101 -0
  396. data/lib/advanced_billing/models/pre_payment.rb +74 -0
  397. data/lib/advanced_billing/models/prepaid_component_price_point.rb +108 -0
  398. data/lib/advanced_billing/models/prepaid_configuration.rb +103 -0
  399. data/lib/advanced_billing/models/prepaid_configuration_response.rb +49 -0
  400. data/lib/advanced_billing/models/prepaid_subscription_balance_changed.rb +110 -0
  401. data/lib/advanced_billing/models/prepaid_usage.rb +199 -0
  402. data/lib/advanced_billing/models/prepaid_usage_allocation_detail.rb +80 -0
  403. data/lib/advanced_billing/models/prepaid_usage_component.rb +350 -0
  404. data/lib/advanced_billing/models/prepayment1.rb +131 -0
  405. data/lib/advanced_billing/models/prepayment_account_balance_changed.rb +108 -0
  406. data/lib/advanced_billing/models/prepayment_aggregated_error.rb +69 -0
  407. data/lib/advanced_billing/models/prepayment_method.rb +41 -0
  408. data/lib/advanced_billing/models/prepayment_response.rb +48 -0
  409. data/lib/advanced_billing/models/prepayments_response.rb +59 -0
  410. data/lib/advanced_billing/models/preview_allocations_request.rb +69 -0
  411. data/lib/advanced_billing/models/price.rb +98 -0
  412. data/lib/advanced_billing/models/price_point.rb +172 -0
  413. data/lib/advanced_billing/models/price_point_type.rb +30 -0
  414. data/lib/advanced_billing/models/pricing_scheme.rb +31 -0
  415. data/lib/advanced_billing/models/product.rb +506 -0
  416. data/lib/advanced_billing/models/product_family.rb +120 -0
  417. data/lib/advanced_billing/models/product_family_response.rb +50 -0
  418. data/lib/advanced_billing/models/product_price_point.rb +289 -0
  419. data/lib/advanced_billing/models/product_price_point_currency_price.rb +99 -0
  420. data/lib/advanced_billing/models/product_price_point_response.rb +48 -0
  421. data/lib/advanced_billing/models/product_response.rb +48 -0
  422. data/lib/advanced_billing/models/proforma_custom_field.rb +87 -0
  423. data/lib/advanced_billing/models/proforma_error.rb +51 -0
  424. data/lib/advanced_billing/models/proforma_invoice.rb +463 -0
  425. data/lib/advanced_billing/models/proforma_invoice_credit.rb +80 -0
  426. data/lib/advanced_billing/models/proforma_invoice_discount.rb +108 -0
  427. data/lib/advanced_billing/models/proforma_invoice_discount_breakout.rb +61 -0
  428. data/lib/advanced_billing/models/proforma_invoice_issued.rb +202 -0
  429. data/lib/advanced_billing/models/proforma_invoice_payment.rb +80 -0
  430. data/lib/advanced_billing/models/proforma_invoice_preview.rb +463 -0
  431. data/lib/advanced_billing/models/proforma_invoice_tax.rb +116 -0
  432. data/lib/advanced_billing/models/proforma_invoice_tax_breakout.rb +60 -0
  433. data/lib/advanced_billing/models/proration.rb +52 -0
  434. data/lib/advanced_billing/models/public_key.rb +70 -0
  435. data/lib/advanced_billing/models/public_signup_page.rb +92 -0
  436. data/lib/advanced_billing/models/quantity_based_component.rb +303 -0
  437. data/lib/advanced_billing/models/reactivate_subscription_group_request.rb +60 -0
  438. data/lib/advanced_billing/models/reactivate_subscription_group_response.rb +130 -0
  439. data/lib/advanced_billing/models/reactivate_subscription_request.rb +122 -0
  440. data/lib/advanced_billing/models/reactivation_billing.rb +66 -0
  441. data/lib/advanced_billing/models/reactivation_charge.rb +30 -0
  442. data/lib/advanced_billing/models/read_payment_profile_response.rb +64 -0
  443. data/lib/advanced_billing/models/reason_code.rb +105 -0
  444. data/lib/advanced_billing/models/reason_code_response.rb +48 -0
  445. data/lib/advanced_billing/models/reason_codes_json_response.rb +50 -0
  446. data/lib/advanced_billing/models/record_payment_request.rb +48 -0
  447. data/lib/advanced_billing/models/recurring_scheme.rb +26 -0
  448. data/lib/advanced_billing/models/referral_code.rb +79 -0
  449. data/lib/advanced_billing/models/referral_validation_response.rb +50 -0
  450. data/lib/advanced_billing/models/refund.rb +124 -0
  451. data/lib/advanced_billing/models/refund_consolidated_invoice.rb +125 -0
  452. data/lib/advanced_billing/models/refund_invoice.rb +124 -0
  453. data/lib/advanced_billing/models/refund_invoice_event_data.rb +171 -0
  454. data/lib/advanced_billing/models/refund_invoice_request.rb +64 -0
  455. data/lib/advanced_billing/models/refund_prepayment.rb +106 -0
  456. data/lib/advanced_billing/models/refund_prepayment_aggregated_error.rb +50 -0
  457. data/lib/advanced_billing/models/refund_prepayment_base_refund_error.rb +50 -0
  458. data/lib/advanced_billing/models/refund_prepayment_request.rb +48 -0
  459. data/lib/advanced_billing/models/refund_success.rb +92 -0
  460. data/lib/advanced_billing/models/remove_payment_event_data.rb +131 -0
  461. data/lib/advanced_billing/models/renewal_preview.rb +157 -0
  462. data/lib/advanced_billing/models/renewal_preview_component.rb +91 -0
  463. data/lib/advanced_billing/models/renewal_preview_line_item.rb +161 -0
  464. data/lib/advanced_billing/models/renewal_preview_request.rb +62 -0
  465. data/lib/advanced_billing/models/renewal_preview_response.rb +49 -0
  466. data/lib/advanced_billing/models/replay_webhooks_request.rb +48 -0
  467. data/lib/advanced_billing/models/replay_webhooks_response.rb +50 -0
  468. data/lib/advanced_billing/models/resent_invitation.rb +81 -0
  469. data/lib/advanced_billing/models/resource_type.rb +23 -0
  470. data/lib/advanced_billing/models/restriction_type.rb +23 -0
  471. data/lib/advanced_billing/models/resume_options.rb +75 -0
  472. data/lib/advanced_billing/models/resumption_charge.rb +27 -0
  473. data/lib/advanced_billing/models/revoked_invitation.rb +71 -0
  474. data/lib/advanced_billing/models/sale_rep.rb +97 -0
  475. data/lib/advanced_billing/models/sale_rep_item_mrr.rb +68 -0
  476. data/lib/advanced_billing/models/sale_rep_settings.rb +109 -0
  477. data/lib/advanced_billing/models/sale_rep_subscription.rb +137 -0
  478. data/lib/advanced_billing/models/segment.rb +189 -0
  479. data/lib/advanced_billing/models/segment_price.rb +132 -0
  480. data/lib/advanced_billing/models/segment_response.rb +50 -0
  481. data/lib/advanced_billing/models/seller.rb +89 -0
  482. data/lib/advanced_billing/models/send_invoice_request.rb +72 -0
  483. data/lib/advanced_billing/models/service_credit.rb +90 -0
  484. data/lib/advanced_billing/models/service_credit_response.rb +48 -0
  485. data/lib/advanced_billing/models/service_credit_type.rb +23 -0
  486. data/lib/advanced_billing/models/shipping_address.rb +113 -0
  487. data/lib/advanced_billing/models/signup_proforma_preview.rb +62 -0
  488. data/lib/advanced_billing/models/signup_proforma_preview_response.rb +50 -0
  489. data/lib/advanced_billing/models/site.rb +212 -0
  490. data/lib/advanced_billing/models/site_response.rb +48 -0
  491. data/lib/advanced_billing/models/site_statistics.rb +171 -0
  492. data/lib/advanced_billing/models/site_summary.rb +87 -0
  493. data/lib/advanced_billing/models/snap_day.rb +21 -0
  494. data/lib/advanced_billing/models/sorting_direction.rb +23 -0
  495. data/lib/advanced_billing/models/status.rb +37 -0
  496. data/lib/advanced_billing/models/status1.rb +23 -0
  497. data/lib/advanced_billing/models/subscription.rb +776 -0
  498. data/lib/advanced_billing/models/subscription_bank_account.rb +281 -0
  499. data/lib/advanced_billing/models/subscription_component.rb +400 -0
  500. data/lib/advanced_billing/models/subscription_component_allocation_error_item.rb +59 -0
  501. data/lib/advanced_billing/models/subscription_component_response.rb +50 -0
  502. data/lib/advanced_billing/models/subscription_component_subscription.rb +70 -0
  503. data/lib/advanced_billing/models/subscription_date_field.rb +44 -0
  504. data/lib/advanced_billing/models/subscription_group.rb +94 -0
  505. data/lib/advanced_billing/models/subscription_group_balances.rb +80 -0
  506. data/lib/advanced_billing/models/subscription_group_bank_account.rb +228 -0
  507. data/lib/advanced_billing/models/subscription_group_component_custom_price.rb +105 -0
  508. data/lib/advanced_billing/models/subscription_group_credit_card.rb +266 -0
  509. data/lib/advanced_billing/models/subscription_group_customer.rb +87 -0
  510. data/lib/advanced_billing/models/subscription_group_inlined.rb +92 -0
  511. data/lib/advanced_billing/models/subscription_group_item.rb +147 -0
  512. data/lib/advanced_billing/models/subscription_group_member_error.rb +68 -0
  513. data/lib/advanced_billing/models/subscription_group_payment_profile.rb +79 -0
  514. data/lib/advanced_billing/models/subscription_group_prepayment.rb +72 -0
  515. data/lib/advanced_billing/models/subscription_group_prepayment_method.rb +35 -0
  516. data/lib/advanced_billing/models/subscription_group_prepayment_request.rb +48 -0
  517. data/lib/advanced_billing/models/subscription_group_prepayment_response.rb +90 -0
  518. data/lib/advanced_billing/models/subscription_group_response.rb +49 -0
  519. data/lib/advanced_billing/models/subscription_group_signup.rb +153 -0
  520. data/lib/advanced_billing/models/subscription_group_signup_component.rb +108 -0
  521. data/lib/advanced_billing/models/subscription_group_signup_error.rb +109 -0
  522. data/lib/advanced_billing/models/subscription_group_signup_failure.rb +84 -0
  523. data/lib/advanced_billing/models/subscription_group_signup_failure_data.rb +146 -0
  524. data/lib/advanced_billing/models/subscription_group_signup_item.rb +200 -0
  525. data/lib/advanced_billing/models/subscription_group_signup_request.rb +49 -0
  526. data/lib/advanced_billing/models/subscription_group_signup_response.rb +167 -0
  527. data/lib/advanced_billing/models/subscription_group_signup_success.rb +84 -0
  528. data/lib/advanced_billing/models/subscription_group_signup_success_data.rb +170 -0
  529. data/lib/advanced_billing/models/subscription_group_subscription_error.rb +86 -0
  530. data/lib/advanced_billing/models/subscription_group_update_error.rb +59 -0
  531. data/lib/advanced_billing/models/subscription_include.rb +23 -0
  532. data/lib/advanced_billing/models/subscription_included_coupon.rb +121 -0
  533. data/lib/advanced_billing/models/subscription_list_date_field.rb +20 -0
  534. data/lib/advanced_billing/models/subscription_migration_preview.rb +88 -0
  535. data/lib/advanced_billing/models/subscription_migration_preview_options.rb +158 -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 +69 -0
  539. data/lib/advanced_billing/models/subscription_mrr_breakout.rb +58 -0
  540. data/lib/advanced_billing/models/subscription_mrr_response.rb +57 -0
  541. data/lib/advanced_billing/models/subscription_note.rb +97 -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 +80 -0
  546. data/lib/advanced_billing/models/subscription_product_migration.rb +148 -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 +53 -0
  552. data/lib/advanced_billing/models/subscription_state_change.rb +81 -0
  553. data/lib/advanced_billing/models/tax_configuration.rb +73 -0
  554. data/lib/advanced_billing/models/tax_configuration_kind.rb +29 -0
  555. data/lib/advanced_billing/models/tax_destination_address.rb +29 -0
  556. data/lib/advanced_billing/models/too_many_management_link_requests.rb +63 -0
  557. data/lib/advanced_billing/models/update_allocation_expiration_date.rb +50 -0
  558. data/lib/advanced_billing/models/update_component.rb +137 -0
  559. data/lib/advanced_billing/models/update_component_price_point.rb +68 -0
  560. data/lib/advanced_billing/models/update_component_price_point_request.rb +51 -0
  561. data/lib/advanced_billing/models/update_component_request.rb +48 -0
  562. data/lib/advanced_billing/models/update_coupon_currency.rb +56 -0
  563. data/lib/advanced_billing/models/update_currency_price.rb +56 -0
  564. data/lib/advanced_billing/models/update_currency_prices_request.rb +57 -0
  565. data/lib/advanced_billing/models/update_customer.rb +211 -0
  566. data/lib/advanced_billing/models/update_customer_request.rb +48 -0
  567. data/lib/advanced_billing/models/update_endpoint.rb +57 -0
  568. data/lib/advanced_billing/models/update_endpoint_request.rb +48 -0
  569. data/lib/advanced_billing/models/update_metadata.rb +68 -0
  570. data/lib/advanced_billing/models/update_metadata_request.rb +50 -0
  571. data/lib/advanced_billing/models/update_metafield.rb +103 -0
  572. data/lib/advanced_billing/models/update_metafields_request.rb +62 -0
  573. data/lib/advanced_billing/models/update_payment_profile.rb +187 -0
  574. data/lib/advanced_billing/models/update_payment_profile_request.rb +49 -0
  575. data/lib/advanced_billing/models/update_payment_profile_response.rb +49 -0
  576. data/lib/advanced_billing/models/update_price.rb +89 -0
  577. data/lib/advanced_billing/models/update_product_price_point.rb +60 -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 +68 -0
  580. data/lib/advanced_billing/models/update_reason_code_request.rb +48 -0
  581. data/lib/advanced_billing/models/update_segment.rb +74 -0
  582. data/lib/advanced_billing/models/update_segment_request.rb +48 -0
  583. data/lib/advanced_billing/models/update_subscription.rb +270 -0
  584. data/lib/advanced_billing/models/update_subscription_component.rb +70 -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 +56 -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/updated_payment_profile.rb +255 -0
  591. data/lib/advanced_billing/models/upsert_prepaid_configuration.rb +104 -0
  592. data/lib/advanced_billing/models/upsert_prepaid_configuration_request.rb +49 -0
  593. data/lib/advanced_billing/models/usage.rb +141 -0
  594. data/lib/advanced_billing/models/usage_response.rb +48 -0
  595. data/lib/advanced_billing/models/void_invoice.rb +48 -0
  596. data/lib/advanced_billing/models/void_invoice_event_data.rb +111 -0
  597. data/lib/advanced_billing/models/void_invoice_event_data1.rb +100 -0
  598. data/lib/advanced_billing/models/void_invoice_request.rb +48 -0
  599. data/lib/advanced_billing/models/webhook.rb +165 -0
  600. data/lib/advanced_billing/models/webhook_order.rb +23 -0
  601. data/lib/advanced_billing/models/webhook_response.rb +50 -0
  602. data/lib/advanced_billing/models/webhook_status.rb +29 -0
  603. data/lib/advanced_billing/models/webhook_subscription.rb +124 -0
  604. data/lib/advanced_billing/utilities/date_time_helper.rb +11 -0
  605. data/lib/advanced_billing/utilities/file_wrapper.rb +16 -0
  606. data/lib/advanced_billing/utilities/union_type_lookup.rb +1240 -0
  607. data/lib/advanced_billing.rb +669 -0
  608. metadata +614 -111
  609. data/bin/arch +0 -1
  610. data/bin/ash +0 -1
  611. data/bin/base64 +0 -1
  612. data/bin/bbconfig +0 -1
  613. data/bin/busybox +0 -0
  614. data/bin/cat +0 -1
  615. data/bin/chattr +0 -1
  616. data/bin/chgrp +0 -1
  617. data/bin/chmod +0 -1
  618. data/bin/chown +0 -1
  619. data/bin/cp +0 -1
  620. data/bin/date +0 -1
  621. data/bin/dd +0 -1
  622. data/bin/df +0 -1
  623. data/bin/dmesg +0 -1
  624. data/bin/dnsdomainname +0 -1
  625. data/bin/dumpkmap +0 -1
  626. data/bin/echo +0 -1
  627. data/bin/ed +0 -1
  628. data/bin/egrep +0 -1
  629. data/bin/false +0 -1
  630. data/bin/fatattr +0 -1
  631. data/bin/fdflush +0 -1
  632. data/bin/fgrep +0 -1
  633. data/bin/fsync +0 -1
  634. data/bin/getopt +0 -1
  635. data/bin/grep +0 -1
  636. data/bin/gunzip +0 -1
  637. data/bin/gzip +0 -1
  638. data/bin/hostname +0 -1
  639. data/bin/ionice +0 -1
  640. data/bin/iostat +0 -1
  641. data/bin/ipcalc +0 -1
  642. data/bin/kbd_mode +0 -1
  643. data/bin/kill +0 -1
  644. data/bin/link +0 -1
  645. data/bin/linux32 +0 -1
  646. data/bin/linux64 +0 -1
  647. data/bin/ln +0 -1
  648. data/bin/login +0 -1
  649. data/bin/ls +0 -1
  650. data/bin/lsattr +0 -1
  651. data/bin/lzop +0 -1
  652. data/bin/makemime +0 -1
  653. data/bin/mkdir +0 -1
  654. data/bin/mknod +0 -1
  655. data/bin/mktemp +0 -1
  656. data/bin/more +0 -1
  657. data/bin/mount +0 -1
  658. data/bin/mountpoint +0 -1
  659. data/bin/mpstat +0 -1
  660. data/bin/mv +0 -1
  661. data/bin/netstat +0 -1
  662. data/bin/nice +0 -1
  663. data/bin/pidof +0 -0
  664. data/bin/ping +0 -1
  665. data/bin/ping6 +0 -1
  666. data/bin/pipe_progress +0 -1
  667. data/bin/printenv +0 -1
  668. data/bin/ps +0 -0
  669. data/bin/pwait +0 -0
  670. data/bin/pwd +0 -1
  671. data/bin/reformime +0 -1
  672. data/bin/rev +0 -1
  673. data/bin/rm +0 -1
  674. data/bin/rmdir +0 -1
  675. data/bin/run-parts +0 -1
  676. data/bin/sed +0 -1
  677. data/bin/setpriv +0 -1
  678. data/bin/setserial +0 -1
  679. data/bin/sh +0 -1
  680. data/bin/slabtop +0 -0
  681. data/bin/sleep +0 -1
  682. data/bin/stat +0 -1
  683. data/bin/stty +0 -1
  684. data/bin/su +0 -1
  685. data/bin/sync +0 -1
  686. data/bin/tar +0 -1
  687. data/bin/tload +0 -0
  688. data/bin/touch +0 -1
  689. data/bin/true +0 -1
  690. data/bin/umount +0 -1
  691. data/bin/uname +0 -1
  692. data/bin/usleep +0 -1
  693. data/bin/vmstat +0 -0
  694. data/bin/w +0 -0
  695. data/bin/watch +0 -0
  696. data/bin/zcat +0 -1
  697. data/lib/apk/db/installed +0 -3582
  698. data/lib/apk/db/lock +0 -0
  699. data/lib/apk/db/scripts.tar +0 -0
  700. data/lib/apk/db/triggers +0 -2
  701. data/lib/ld-musl-x86_64.so.1 +0 -0
  702. data/lib/libapk.so.3.12.0 +0 -0
  703. data/lib/libc.musl-x86_64.so.1 +0 -1
  704. data/lib/libcrypto.so.1.1 +0 -0
  705. data/lib/libprocps.so.8 +0 -1
  706. data/lib/libprocps.so.8.0.3 +0 -0
  707. data/lib/libssl.so.1.1 +0 -0
  708. data/lib/libz.so +0 -1
  709. data/lib/libz.so.1 +0 -1
  710. data/lib/libz.so.1.2.12 +0 -0
  711. data/lib/sysctl.d/00-alpine.conf +0 -40
@@ -0,0 +1,691 @@
1
+ # advanced_billing
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module AdvancedBilling
7
+ # CouponsController
8
+ class CouponsController < BaseController
9
+ # List coupons for a specific Product Family in a Site.
10
+ # If the coupon is set to `use_site_exchange_rate: true`, it will return
11
+ # pricing based on the current exchange rate. If the flag is set to false,
12
+ # it will return all of the defined prices for each currency.
13
+ # @param [Integer] product_family_id Required parameter: The Chargify id of
14
+ # the product family to which the coupon belongs
15
+ # @param [Integer] page Optional parameter: Result records are organized in
16
+ # pages. By default, the first page of results is displayed. The page
17
+ # parameter specifies a page number of results to fetch. You can start
18
+ # navigating through the pages to consume the results. You do this by
19
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
20
+ # the query string. If there are no results to return, then an empty result
21
+ # set will be returned. Use in query `page=1`.
22
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
23
+ # many records to fetch in each request. Default value is 30. The maximum
24
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
25
+ # Use in query `per_page=200`.
26
+ # @param [BasicDateField] filter_date_field Optional parameter: The type of
27
+ # filter you would like to apply to your search. Use in query
28
+ # `filter[date_field]=created_at`.
29
+ # @param [String] filter_end_date Optional parameter: The end date (format
30
+ # YYYY-MM-DD) with which to filter the date_field. Returns coupons with a
31
+ # timestamp up to and including 11:59:59PM in your site’s time zone on the
32
+ # date specified. Use in query `filter[date_field]=2011-12-15`.
33
+ # @param [String] filter_end_datetime Optional parameter: The end date and
34
+ # time (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field.
35
+ # Returns coupons with a timestamp at or before exact time provided in
36
+ # query. You can specify timezone in query - otherwise your site's time zone
37
+ # will be used. If provided, this parameter will be used instead of
38
+ # end_date. Use in query `?filter[end_datetime]=2011-12-1T10:15:30+01:00`.
39
+ # @param [String] filter_start_date Optional parameter: The start date
40
+ # (format YYYY-MM-DD) with which to filter the date_field. Returns coupons
41
+ # with a timestamp at or after midnight (12:00:00 AM) in your site’s time
42
+ # zone on the date specified. Use in query
43
+ # `filter[start_date]=2011-12-17`.
44
+ # @param [String] filter_start_datetime Optional parameter: The start date
45
+ # and time (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field.
46
+ # Returns coupons with a timestamp at or after exact time provided in query.
47
+ # You can specify timezone in query - otherwise your site's time zone will
48
+ # be used. If provided, this parameter will be used instead of start_date.
49
+ # Use in query `filter[start_datetime]=2011-12-19T10:15:30+01:00`.
50
+ # @param [Array[Integer]] filter_ids Optional parameter: Allows fetching
51
+ # coupons with matching id based on provided values. Use in query
52
+ # `filter[ids]=1,2,3`.
53
+ # @param [Array[String]] filter_codes Optional parameter: Allows fetching
54
+ # coupons with matching codes based on provided values. Use in query
55
+ # `filter[codes]=free,free_trial`.
56
+ # @param [TrueClass | FalseClass] currency_prices Optional parameter: When
57
+ # fetching coupons, if you have defined multiple currencies at the site
58
+ # level, you can optionally pass the `?currency_prices=true` query param to
59
+ # include an array of currency price data in the response. Use in query
60
+ # `currency_prices=true`.
61
+ # @param [TrueClass | FalseClass] filter_use_site_exchange_rate Optional
62
+ # parameter: Allows fetching coupons with matching use_site_exchange_rate
63
+ # based on provided value. Use in query
64
+ # `filter[use_site_exchange_rate]=true`.
65
+ # @return [Array[CouponResponse]] response from the API call.
66
+ def list_coupons_for_product_family(options = {})
67
+ new_api_call_builder
68
+ .request(new_request_builder(HttpMethodEnum::GET,
69
+ '/product_families/{product_family_id}/coupons.json',
70
+ Server::DEFAULT)
71
+ .template_param(new_parameter(options['product_family_id'], key: 'product_family_id')
72
+ .is_required(true)
73
+ .should_encode(true))
74
+ .query_param(new_parameter(options['page'], key: 'page'))
75
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
76
+ .query_param(new_parameter(options['filter_date_field'], key: 'filter[date_field]'))
77
+ .query_param(new_parameter(options['filter_end_date'], key: 'filter[end_date]'))
78
+ .query_param(new_parameter(options['filter_end_datetime'], key: 'filter[end_datetime]'))
79
+ .query_param(new_parameter(options['filter_start_date'], key: 'filter[start_date]'))
80
+ .query_param(new_parameter(options['filter_start_datetime'], key: 'filter[start_datetime]'))
81
+ .query_param(new_parameter(options['filter_ids'], key: 'filter[ids]'))
82
+ .query_param(new_parameter(options['filter_codes'], key: 'filter[codes]'))
83
+ .query_param(new_parameter(options['currency_prices'], key: 'currency_prices'))
84
+ .query_param(new_parameter(options['filter_use_site_exchange_rate'], key: 'filter[use_site_exchange_rate]'))
85
+ .header_param(new_parameter('application/json', key: 'accept'))
86
+ .auth(Single.new('BasicAuth'))
87
+ .array_serialization_format(ArraySerializationFormat::CSV))
88
+ .response(new_response_handler
89
+ .is_nullify404(true)
90
+ .deserializer(APIHelper.method(:custom_type_deserializer))
91
+ .deserialize_into(CouponResponse.method(:from_hash))
92
+ .is_response_array(true))
93
+ .execute
94
+ end
95
+
96
+ # You can search for a coupon via the API with the find method. By passing a
97
+ # code parameter, the find will attempt to locate a coupon that matches that
98
+ # code. If no coupon is found, a 404 is returned.
99
+ # If you have more than one product family and if the coupon you are trying
100
+ # to find does not belong to the default product family in your site, then
101
+ # you will need to specify (either in the url or as a query string param)
102
+ # the product family id.
103
+ # @param [Integer] product_family_id Optional parameter: The Chargify id of
104
+ # the product family to which the coupon belongs
105
+ # @param [String] code Optional parameter: The code of the coupon
106
+ # @return [CouponResponse] response from the API call.
107
+ def read_coupon_by_code(product_family_id: nil,
108
+ code: nil)
109
+ new_api_call_builder
110
+ .request(new_request_builder(HttpMethodEnum::GET,
111
+ '/coupons/find.json',
112
+ Server::DEFAULT)
113
+ .query_param(new_parameter(product_family_id, key: 'product_family_id'))
114
+ .query_param(new_parameter(code, key: 'code'))
115
+ .header_param(new_parameter('application/json', key: 'accept'))
116
+ .auth(Single.new('BasicAuth')))
117
+ .response(new_response_handler
118
+ .is_nullify404(true)
119
+ .deserializer(APIHelper.method(:custom_type_deserializer))
120
+ .deserialize_into(CouponResponse.method(:from_hash)))
121
+ .execute
122
+ end
123
+
124
+ # This request allows you to request the subcodes that are attached to a
125
+ # coupon.
126
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
127
+ # coupon
128
+ # @param [Integer] page Optional parameter: Result records are organized in
129
+ # pages. By default, the first page of results is displayed. The page
130
+ # parameter specifies a page number of results to fetch. You can start
131
+ # navigating through the pages to consume the results. You do this by
132
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
133
+ # the query string. If there are no results to return, then an empty result
134
+ # set will be returned. Use in query `page=1`.
135
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
136
+ # many records to fetch in each request. Default value is 20. The maximum
137
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
138
+ # Use in query `per_page=200`.
139
+ # @return [CouponSubcodes] response from the API call.
140
+ def list_coupon_subcodes(options = {})
141
+ new_api_call_builder
142
+ .request(new_request_builder(HttpMethodEnum::GET,
143
+ '/coupons/{coupon_id}/codes.json',
144
+ Server::DEFAULT)
145
+ .template_param(new_parameter(options['coupon_id'], key: 'coupon_id')
146
+ .is_required(true)
147
+ .should_encode(true))
148
+ .query_param(new_parameter(options['page'], key: 'page'))
149
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
150
+ .header_param(new_parameter('application/json', key: 'accept'))
151
+ .auth(Single.new('BasicAuth')))
152
+ .response(new_response_handler
153
+ .is_nullify404(true)
154
+ .deserializer(APIHelper.method(:custom_type_deserializer))
155
+ .deserialize_into(CouponSubcodes.method(:from_hash)))
156
+ .execute
157
+ end
158
+
159
+ # You can update the subcodes for the given Coupon via the API with a PUT
160
+ # request to the resource endpoint.
161
+ # Send an array of new coupon subcodes.
162
+ # **Note**: All current subcodes for that Coupon will be deleted first, and
163
+ # replaced with the list of subcodes sent to this endpoint.
164
+ # The response will contain:
165
+ # + The created subcodes,
166
+ # + Subcodes that were not created because they already exist,
167
+ # + Any subcodes not created because they are invalid.
168
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
169
+ # coupon
170
+ # @param [CouponSubcodes] body Optional parameter: Example:
171
+ # @return [CouponSubcodesResponse] response from the API call.
172
+ def update_coupon_subcodes(coupon_id,
173
+ body: nil)
174
+ new_api_call_builder
175
+ .request(new_request_builder(HttpMethodEnum::PUT,
176
+ '/coupons/{coupon_id}/codes.json',
177
+ Server::DEFAULT)
178
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
179
+ .is_required(true)
180
+ .should_encode(true))
181
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
182
+ .body_param(new_parameter(body))
183
+ .header_param(new_parameter('application/json', key: 'accept'))
184
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
185
+ .auth(Single.new('BasicAuth')))
186
+ .response(new_response_handler
187
+ .is_nullify404(true)
188
+ .deserializer(APIHelper.method(:custom_type_deserializer))
189
+ .deserialize_into(CouponSubcodesResponse.method(:from_hash)))
190
+ .execute
191
+ end
192
+
193
+ # You can verify if a specific coupon code is valid using the `validate`
194
+ # method. This method is useful for validating coupon codes that are entered
195
+ # by a customer. If the coupon is found and is valid, the coupon will be
196
+ # returned with a 200 status code.
197
+ # If the coupon is invalid, the status code will be 404 and the response
198
+ # will say why it is invalid. If the coupon is valid, the status code will
199
+ # be 200 and the coupon will be returned. The following reasons for
200
+ # invalidity are supported:
201
+ # + Coupon not found
202
+ # + Coupon is invalid
203
+ # + Coupon expired
204
+ # If you have more than one product family and if the coupon you are
205
+ # validating does not belong to the first product family in your site, then
206
+ # you will need to specify the product family, either in the url or as a
207
+ # query string param. This can be done by supplying the id or the handle in
208
+ # the `handle:my-family` format.
209
+ # Eg.
210
+ # ```
211
+ # https://<subdomain>.chargify.com/product_families/handle:<product_family_h
212
+ # andle>/coupons/validate.<format>?code=<coupon_code>
213
+ # ```
214
+ # Or:
215
+ # ```
216
+ # https://<subdomain>.chargify.com/coupons/validate.<format>?code=<coupon_co
217
+ # de>&product_family_id=<id>
218
+ # ```
219
+ # @param [String] code Required parameter: The code of the coupon
220
+ # @param [Integer] product_family_id Optional parameter: The Chargify id of
221
+ # the product family to which the coupon belongs
222
+ # @return [CouponResponse] response from the API call.
223
+ def validate_coupon(code,
224
+ product_family_id: nil)
225
+ new_api_call_builder
226
+ .request(new_request_builder(HttpMethodEnum::GET,
227
+ '/coupons/validate.json',
228
+ Server::DEFAULT)
229
+ .query_param(new_parameter(code, key: 'code')
230
+ .is_required(true))
231
+ .query_param(new_parameter(product_family_id, key: 'product_family_id'))
232
+ .header_param(new_parameter('application/json', key: 'accept'))
233
+ .auth(Single.new('BasicAuth')))
234
+ .response(new_response_handler
235
+ .is_nullify404(true)
236
+ .deserializer(APIHelper.method(:custom_type_deserializer))
237
+ .deserialize_into(CouponResponse.method(:from_hash))
238
+ .local_error('404',
239
+ 'Not Found',
240
+ SingleStringErrorResponseException))
241
+ .execute
242
+ end
243
+
244
+ # ## Update Coupon
245
+ # You can update a Coupon via the API with a PUT request to the resource
246
+ # endpoint.
247
+ # You can restrict a coupon to only apply to specific products / components
248
+ # by optionally passing in hashes of `restricted_products` and/or
249
+ # `restricted_components` in the format:
250
+ # `{ "<product/component_id>": boolean_value }`
251
+ # @param [Integer] product_family_id Required parameter: The Chargify id of
252
+ # the product family to which the coupon belongs
253
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
254
+ # coupon
255
+ # @param [CreateOrUpdateCoupon | nil] body Optional parameter: Example:
256
+ # @return [CouponResponse] response from the API call.
257
+ def update_coupon(product_family_id,
258
+ coupon_id,
259
+ body: nil)
260
+ new_api_call_builder
261
+ .request(new_request_builder(HttpMethodEnum::PUT,
262
+ '/product_families/{product_family_id}/coupons/{coupon_id}.json',
263
+ Server::DEFAULT)
264
+ .template_param(new_parameter(product_family_id, key: 'product_family_id')
265
+ .is_required(true)
266
+ .should_encode(true))
267
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
268
+ .is_required(true)
269
+ .should_encode(true))
270
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
271
+ .body_param(new_parameter(body)
272
+ .validator(proc do |value|
273
+ UnionTypeLookUp.get(:UpdateCouponBody)
274
+ .validate(value)
275
+ end))
276
+ .header_param(new_parameter('application/json', key: 'accept'))
277
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
278
+ .auth(Single.new('BasicAuth')))
279
+ .response(new_response_handler
280
+ .is_nullify404(true)
281
+ .deserializer(APIHelper.method(:custom_type_deserializer))
282
+ .deserialize_into(CouponResponse.method(:from_hash)))
283
+ .execute
284
+ end
285
+
286
+ # You can retrieve a list of coupons.
287
+ # If the coupon is set to `use_site_exchange_rate: true`, it will return
288
+ # pricing based on the current exchange rate. If the flag is set to false,
289
+ # it will return all of the defined prices for each currency.
290
+ # @param [Integer] page Optional parameter: Result records are organized in
291
+ # pages. By default, the first page of results is displayed. The page
292
+ # parameter specifies a page number of results to fetch. You can start
293
+ # navigating through the pages to consume the results. You do this by
294
+ # passing in a page parameter. Retrieve the next page by adding ?page=2 to
295
+ # the query string. If there are no results to return, then an empty result
296
+ # set will be returned. Use in query `page=1`.
297
+ # @param [Integer] per_page Optional parameter: This parameter indicates how
298
+ # many records to fetch in each request. Default value is 30. The maximum
299
+ # allowed values is 200; any per_page value over 200 will be changed to 200.
300
+ # Use in query `per_page=200`.
301
+ # @param [BasicDateField] date_field Optional parameter: The field was
302
+ # deprecated: on January 20, 2022. We recommend using filter[date_field]
303
+ # instead to achieve the same result. The type of filter you would like to
304
+ # apply to your search.
305
+ # @param [String] start_date Optional parameter: The field was deprecated:
306
+ # on January 20, 2022. We recommend using filter[start_date] instead to
307
+ # achieve the same result. The start date (format YYYY-MM-DD) with which to
308
+ # filter the date_field. Returns coupons with a timestamp at or after
309
+ # midnight (12:00:00 AM) in your site’s time zone on the date specified.
310
+ # @param [String] end_date Optional parameter: The field was deprecated: on
311
+ # January 20, 2022. We recommend using filter[end_date] instead to achieve
312
+ # the same result. The end date (format YYYY-MM-DD) with which to filter the
313
+ # date_field. Returns coupons with a timestamp up to and including
314
+ # 11:59:59PM in your site’s time zone on the date specified.
315
+ # @param [String] start_datetime Optional parameter: The field was
316
+ # deprecated: on January 20, 2022. We recommend using filter[start_datetime]
317
+ # instead to achieve the same result. The start date and time (format
318
+ # YYYY-MM-DD HH:MM:SS) with which to filter the date_field. Returns coupons
319
+ # with a timestamp at or after exact time provided in query. You can specify
320
+ # timezone in query - otherwise your site's time zone will be used. If
321
+ # provided, this parameter will be used instead of start_date.
322
+ # @param [String] end_datetime Optional parameter: The field was deprecated:
323
+ # on January 20, 2022. We recommend using filter[end_datetime] instead to
324
+ # achieve the same result. The end date and time (format YYYY-MM-DD
325
+ # HH:MM:SS) with which to filter the date_field. Returns coupons with a
326
+ # timestamp at or before exact time provided in query. You can specify
327
+ # timezone in query - otherwise your site's time zone will be used. If
328
+ # provided, this parameter will be used instead of end_date.
329
+ # @param [Array[Integer]] filter_ids Optional parameter: Allows fetching
330
+ # coupons with matching id based on provided values. Use in query
331
+ # `filter[ids]=1,2,3`.
332
+ # @param [Array[String]] filter_codes Optional parameter: Allows fetching
333
+ # coupons with matching code based on provided values. Use in query
334
+ # `filter[ids]=1,2,3`.
335
+ # @param [TrueClass | FalseClass] currency_prices Optional parameter: When
336
+ # fetching coupons, if you have defined multiple currencies at the site
337
+ # level, you can optionally pass the `?currency_prices=true` query param to
338
+ # include an array of currency price data in the response. Use in query
339
+ # `currency_prices=true`.
340
+ # @param [String] filter_end_date Optional parameter: The end date (format
341
+ # YYYY-MM-DD) with which to filter the date_field. Returns coupons with a
342
+ # timestamp up to and including 11:59:59PM in your site’s time zone on the
343
+ # date specified. Use in query `filter[end_date]=2011-12-17`.
344
+ # @param [String] filter_end_datetime Optional parameter: The end date and
345
+ # time (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field.
346
+ # Returns coupons with a timestamp at or before exact time provided in
347
+ # query. You can specify timezone in query - otherwise your site's time zone
348
+ # will be used. If provided, this parameter will be used instead of
349
+ # end_date. Use in query `filter[end_datetime]=2011-12-19T10:15:30+01:00`.
350
+ # @param [String] filter_start_date Optional parameter: The start date
351
+ # (format YYYY-MM-DD) with which to filter the date_field. Returns coupons
352
+ # with a timestamp at or after midnight (12:00:00 AM) in your site’s time
353
+ # zone on the date specified. Use in query
354
+ # `filter[start_date]=2011-12-19`.
355
+ # @param [String] filter_start_datetime Optional parameter: The start date
356
+ # and time (format YYYY-MM-DD HH:MM:SS) with which to filter the date_field.
357
+ # Returns coupons with a timestamp at or after exact time provided in query.
358
+ # You can specify timezone in query - otherwise your site's time zone will
359
+ # be used. If provided, this parameter will be used instead of start_date.
360
+ # Use in query `filter[start_datetime]=2011-12-19T10:15:30+01:00`.
361
+ # @param [BasicDateField] filter_date_field Optional parameter: The type of
362
+ # filter you would like to apply to your search. Use in query
363
+ # `filter[date_field]=updated_at`.
364
+ # @param [TrueClass | FalseClass] filter_use_site_exchange_rate Optional
365
+ # parameter: Allows fetching coupons with matching use_site_exchange_rate
366
+ # based on provided value. Use in query
367
+ # `filter[use_site_exchange_rate]=true`.
368
+ # @return [Array[CouponResponse]] response from the API call.
369
+ def list_coupons(options = {})
370
+ new_api_call_builder
371
+ .request(new_request_builder(HttpMethodEnum::GET,
372
+ '/coupons.json',
373
+ Server::DEFAULT)
374
+ .query_param(new_parameter(options['page'], key: 'page'))
375
+ .query_param(new_parameter(options['per_page'], key: 'per_page'))
376
+ .query_param(new_parameter(options['date_field'], key: 'date_field'))
377
+ .query_param(new_parameter(options['start_date'], key: 'start_date'))
378
+ .query_param(new_parameter(options['end_date'], key: 'end_date'))
379
+ .query_param(new_parameter(options['start_datetime'], key: 'start_datetime'))
380
+ .query_param(new_parameter(options['end_datetime'], key: 'end_datetime'))
381
+ .query_param(new_parameter(options['filter_ids'], key: 'filter[ids]'))
382
+ .query_param(new_parameter(options['filter_codes'], key: 'filter[codes]'))
383
+ .query_param(new_parameter(options['currency_prices'], key: 'currency_prices'))
384
+ .query_param(new_parameter(options['filter_end_date'], key: 'filter[end_date]'))
385
+ .query_param(new_parameter(options['filter_end_datetime'], key: 'filter[end_datetime]'))
386
+ .query_param(new_parameter(options['filter_start_date'], key: 'filter[start_date]'))
387
+ .query_param(new_parameter(options['filter_start_datetime'], key: 'filter[start_datetime]'))
388
+ .query_param(new_parameter(options['filter_date_field'], key: 'filter[date_field]'))
389
+ .query_param(new_parameter(options['filter_use_site_exchange_rate'], key: 'filter[use_site_exchange_rate]'))
390
+ .header_param(new_parameter('application/json', key: 'accept'))
391
+ .auth(Single.new('BasicAuth'))
392
+ .array_serialization_format(ArraySerializationFormat::CSV))
393
+ .response(new_response_handler
394
+ .is_nullify404(true)
395
+ .deserializer(APIHelper.method(:custom_type_deserializer))
396
+ .deserialize_into(CouponResponse.method(:from_hash))
397
+ .is_response_array(true))
398
+ .execute
399
+ end
400
+
401
+ # This endpoint allows you to create and/or update currency prices for an
402
+ # existing coupon. Multiple prices can be created or updated in a single
403
+ # request but each of the currencies must be defined on the site level
404
+ # already and the coupon must be an amount-based coupon, not percentage.
405
+ # Currency pricing for coupons must mirror the setup of the primary coupon
406
+ # pricing - if the primary coupon is percentage based, you will not be able
407
+ # to define pricing in non-primary currencies.
408
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
409
+ # coupon
410
+ # @param [CouponCurrencyRequest] body Optional parameter: Example:
411
+ # @return [Array[CouponCurrency]] response from the API call.
412
+ def update_coupon_currency_prices(coupon_id,
413
+ body: nil)
414
+ new_api_call_builder
415
+ .request(new_request_builder(HttpMethodEnum::PUT,
416
+ '/coupon/{coupon_id}/currency_prices.json',
417
+ Server::DEFAULT)
418
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
419
+ .is_required(true)
420
+ .should_encode(true))
421
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
422
+ .body_param(new_parameter(body))
423
+ .header_param(new_parameter('application/json', key: 'accept'))
424
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
425
+ .auth(Single.new('BasicAuth')))
426
+ .response(new_response_handler
427
+ .is_nullify404(true)
428
+ .deserializer(APIHelper.method(:custom_type_deserializer))
429
+ .deserialize_into(CouponCurrency.method(:from_hash))
430
+ .is_response_array(true))
431
+ .execute
432
+ end
433
+
434
+ # ## Coupon Subcodes Intro
435
+ # Coupon Subcodes allow you to create a set of unique codes that allow you
436
+ # to expand the use of one coupon.
437
+ # For example:
438
+ # Master Coupon Code:
439
+ # + SPRING2020
440
+ # Coupon Subcodes:
441
+ # + SPRING90210
442
+ # + DP80302
443
+ # + SPRINGBALTIMORE
444
+ # Coupon subcodes can be administered in the Admin Interface or via the API.
445
+ # When creating a coupon subcode, you must specify a coupon to attach it to
446
+ # using the coupon_id. Valid coupon subcodes are all capital letters,
447
+ # contain only letters and numbers, and do not have any spaces. Lowercase
448
+ # letters will be capitalized before the subcode is created.
449
+ # ## Coupon Subcodes Documentation
450
+ # Full documentation on how to create coupon subcodes in the Chargify UI can
451
+ # be located
452
+ # [here](https://chargify.zendesk.com/hc/en-us/articles/4407755909531#coupon
453
+ # -codes).
454
+ # Additionally, for documentation on how to apply a coupon to a Subscription
455
+ # within the Chargify UI, please see our documentation
456
+ # [here](https://chargify.zendesk.com/hc/en-us/articles/4407884887835#coupon
457
+ # ).
458
+ # ## Create Coupon Subcode
459
+ # This request allows you to create specific subcodes underneath an existing
460
+ # coupon code.
461
+ # *Note*: If you are using any of the allowed special characters ("%", "@",
462
+ # "+", "-", "_", and "."), you must encode them for use in the URL.
463
+ # % to %25
464
+ # @ to %40
465
+ # + to %2B
466
+ # - to %2D
467
+ # _ to %5F
468
+ # . to %2E
469
+ # So, if the coupon subcode is `20%OFF`, the URL to delete this coupon
470
+ # subcode would be:
471
+ # `https://<subdomain>.chargify.com/coupons/567/codes/20%25OFF.<format>`
472
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
473
+ # coupon
474
+ # @param [CouponSubcodes] body Optional parameter: Example:
475
+ # @return [CouponSubcodesResponse] response from the API call.
476
+ def create_coupon_subcodes(coupon_id,
477
+ body: nil)
478
+ new_api_call_builder
479
+ .request(new_request_builder(HttpMethodEnum::POST,
480
+ '/coupons/{coupon_id}/codes.json',
481
+ Server::DEFAULT)
482
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
483
+ .is_required(true)
484
+ .should_encode(true))
485
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
486
+ .body_param(new_parameter(body))
487
+ .header_param(new_parameter('application/json', key: 'accept'))
488
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
489
+ .auth(Single.new('BasicAuth')))
490
+ .response(new_response_handler
491
+ .is_nullify404(true)
492
+ .deserializer(APIHelper.method(:custom_type_deserializer))
493
+ .deserialize_into(CouponSubcodesResponse.method(:from_hash)))
494
+ .execute
495
+ end
496
+
497
+ # ## Example
498
+ # Given a coupon with an ID of 567, and a coupon subcode of 20OFF, the URL
499
+ # to `DELETE` this coupon subcode would be:
500
+ # ```
501
+ # http://subdomain.chargify.com/coupons/567/codes/20OFF.<format>
502
+ # ```
503
+ # Note: If you are using any of the allowed special characters (“%”, “@”,
504
+ # “+”, “-”, “_”, and “.”), you must encode them for use in the URL.
505
+ # | Special character | Encoding |
506
+ # |-------------------|----------|
507
+ # | % | %25 |
508
+ # | @ | %40 |
509
+ # | + | %2B |
510
+ # | – | %2D |
511
+ # | _ | %5F |
512
+ # | . | %2E |
513
+ # ## Percent Encoding Example
514
+ # Or if the coupon subcode is 20%OFF, the URL to delete this coupon subcode
515
+ # would be:
516
+ # @https://<subdomain>.chargify.com/coupons/567/codes/20%25OFF.<format>
517
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
518
+ # coupon to which the subcode belongs
519
+ # @param [String] subcode Required parameter: The subcode of the coupon
520
+ # @return [void] response from the API call.
521
+ def delete_coupon_subcode(coupon_id,
522
+ subcode)
523
+ new_api_call_builder
524
+ .request(new_request_builder(HttpMethodEnum::DELETE,
525
+ '/coupons/{coupon_id}/codes/{subcode}.json',
526
+ Server::DEFAULT)
527
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
528
+ .is_required(true)
529
+ .should_encode(true))
530
+ .template_param(new_parameter(subcode, key: 'subcode')
531
+ .is_required(true)
532
+ .should_encode(true))
533
+ .auth(Single.new('BasicAuth')))
534
+ .response(new_response_handler
535
+ .is_nullify404(true)
536
+ .is_response_void(true)
537
+ .local_error('404',
538
+ 'Not Found',
539
+ APIException))
540
+ .execute
541
+ end
542
+
543
+ # ## Coupons Documentation
544
+ # Coupons can be administered in the Chargify application or created via
545
+ # API. Please view our section on [creating
546
+ # coupons](https://maxio-chargify.zendesk.com/hc/en-us/articles/540474283073
547
+ # 3) for more information.
548
+ # Additionally, for documentation on how to apply a coupon to a subscription
549
+ # within the Chargify UI, please see our documentation
550
+ # [here](https://maxio-chargify.zendesk.com/hc/en-us/articles/5404761012877)
551
+ # .
552
+ # ## Create Coupon
553
+ # This request will create a coupon, based on the provided information.
554
+ # When creating a coupon, you must specify a product family using the
555
+ # `product_family_id`. If no `product_family_id` is passed, the first
556
+ # product family available is used. You will also need to formulate your URL
557
+ # to cite the Product Family ID in your request.
558
+ # You can restrict a coupon to only apply to specific products / components
559
+ # by optionally passing in hashes of `restricted_products` and/or
560
+ # `restricted_components` in the format:
561
+ # `{ "<product/component_id>": boolean_value }`
562
+ # @param [Integer] product_family_id Required parameter: The Chargify id of
563
+ # the product family to which the coupon belongs
564
+ # @param [CreateOrUpdateCoupon | nil] body Optional parameter: Example:
565
+ # @return [CouponResponse] response from the API call.
566
+ def create_coupon(product_family_id,
567
+ body: nil)
568
+ new_api_call_builder
569
+ .request(new_request_builder(HttpMethodEnum::POST,
570
+ '/product_families/{product_family_id}/coupons.json',
571
+ Server::DEFAULT)
572
+ .template_param(new_parameter(product_family_id, key: 'product_family_id')
573
+ .is_required(true)
574
+ .should_encode(true))
575
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
576
+ .body_param(new_parameter(body)
577
+ .validator(proc do |value|
578
+ UnionTypeLookUp.get(:CreateCouponBody)
579
+ .validate(value)
580
+ end))
581
+ .header_param(new_parameter('application/json', key: 'accept'))
582
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
583
+ .auth(Single.new('BasicAuth')))
584
+ .response(new_response_handler
585
+ .is_nullify404(true)
586
+ .deserializer(APIHelper.method(:custom_type_deserializer))
587
+ .deserialize_into(CouponResponse.method(:from_hash))
588
+ .local_error('422',
589
+ 'Unprocessable Entity (WebDAV)',
590
+ ErrorListResponseException))
591
+ .execute
592
+ end
593
+
594
+ # You can retrieve the Coupon via the API with the Show method. You must
595
+ # identify the Coupon in this call by the ID parameter that Chargify
596
+ # assigns.
597
+ # If instead you would like to find a Coupon using a Coupon code, see the
598
+ # Coupon Find method.
599
+ # When fetching a coupon, if you have defined multiple currencies at the
600
+ # site level, you can optionally pass the `?currency_prices=true` query
601
+ # param to include an array of currency price data in the response.
602
+ # If the coupon is set to `use_site_exchange_rate: true`, it will return
603
+ # pricing based on the current exchange rate. If the flag is set to false,
604
+ # it will return all of the defined prices for each currency.
605
+ # @param [Integer] product_family_id Required parameter: The Chargify id of
606
+ # the product family to which the coupon belongs
607
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
608
+ # coupon
609
+ # @return [CouponResponse] response from the API call.
610
+ def read_coupon(product_family_id,
611
+ coupon_id)
612
+ new_api_call_builder
613
+ .request(new_request_builder(HttpMethodEnum::GET,
614
+ '/product_families/{product_family_id}/coupons/{coupon_id}.json',
615
+ Server::DEFAULT)
616
+ .template_param(new_parameter(product_family_id, key: 'product_family_id')
617
+ .is_required(true)
618
+ .should_encode(true))
619
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
620
+ .is_required(true)
621
+ .should_encode(true))
622
+ .header_param(new_parameter('application/json', key: 'accept'))
623
+ .auth(Single.new('BasicAuth')))
624
+ .response(new_response_handler
625
+ .is_nullify404(true)
626
+ .deserializer(APIHelper.method(:custom_type_deserializer))
627
+ .deserialize_into(CouponResponse.method(:from_hash)))
628
+ .execute
629
+ end
630
+
631
+ # You can archive a Coupon via the API with the archive method.
632
+ # Archiving makes that Coupon unavailable for future use, but allows it to
633
+ # remain attached and functional on existing Subscriptions that are using
634
+ # it.
635
+ # The `archived_at` date and time will be assigned.
636
+ # @param [Integer] product_family_id Required parameter: The Chargify id of
637
+ # the product family to which the coupon belongs
638
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
639
+ # coupon
640
+ # @return [CouponResponse] response from the API call.
641
+ def archive_coupon(product_family_id,
642
+ coupon_id)
643
+ new_api_call_builder
644
+ .request(new_request_builder(HttpMethodEnum::DELETE,
645
+ '/product_families/{product_family_id}/coupons/{coupon_id}.json',
646
+ Server::DEFAULT)
647
+ .template_param(new_parameter(product_family_id, key: 'product_family_id')
648
+ .is_required(true)
649
+ .should_encode(true))
650
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
651
+ .is_required(true)
652
+ .should_encode(true))
653
+ .header_param(new_parameter('application/json', key: 'accept'))
654
+ .auth(Single.new('BasicAuth')))
655
+ .response(new_response_handler
656
+ .is_nullify404(true)
657
+ .deserializer(APIHelper.method(:custom_type_deserializer))
658
+ .deserialize_into(CouponResponse.method(:from_hash)))
659
+ .execute
660
+ end
661
+
662
+ # This request will provide details about the coupon usage as an array of
663
+ # data hashes, one per product.
664
+ # @param [Integer] product_family_id Required parameter: The Chargify id of
665
+ # the product family to which the coupon belongs
666
+ # @param [Integer] coupon_id Required parameter: The Chargify id of the
667
+ # coupon
668
+ # @return [Array[CouponUsage]] response from the API call.
669
+ def read_coupon_usage(product_family_id,
670
+ coupon_id)
671
+ new_api_call_builder
672
+ .request(new_request_builder(HttpMethodEnum::GET,
673
+ '/product_families/{product_family_id}/coupons/{coupon_id}/usage.json',
674
+ Server::DEFAULT)
675
+ .template_param(new_parameter(product_family_id, key: 'product_family_id')
676
+ .is_required(true)
677
+ .should_encode(true))
678
+ .template_param(new_parameter(coupon_id, key: 'coupon_id')
679
+ .is_required(true)
680
+ .should_encode(true))
681
+ .header_param(new_parameter('application/json', key: 'accept'))
682
+ .auth(Single.new('BasicAuth')))
683
+ .response(new_response_handler
684
+ .is_nullify404(true)
685
+ .deserializer(APIHelper.method(:custom_type_deserializer))
686
+ .deserialize_into(CouponUsage.method(:from_hash))
687
+ .is_response_array(true))
688
+ .execute
689
+ end
690
+ end
691
+ end