orb-billing 0.1.0.pre.alpha.33

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 (635) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +169 -0
  3. data/lib/orb/client.rb +129 -0
  4. data/lib/orb/errors.rb +317 -0
  5. data/lib/orb/models/alert.rb +225 -0
  6. data/lib/orb/models/alert_create_for_customer_params.rb +77 -0
  7. data/lib/orb/models/alert_create_for_external_customer_params.rb +77 -0
  8. data/lib/orb/models/alert_create_for_subscription_params.rb +74 -0
  9. data/lib/orb/models/alert_disable_params.rb +26 -0
  10. data/lib/orb/models/alert_enable_params.rb +26 -0
  11. data/lib/orb/models/alert_list_params.rb +97 -0
  12. data/lib/orb/models/alert_retrieve_params.rb +19 -0
  13. data/lib/orb/models/alert_update_params.rb +46 -0
  14. data/lib/orb/models/amount_discount.rb +53 -0
  15. data/lib/orb/models/billable_metric.rb +76 -0
  16. data/lib/orb/models/billing_cycle_relative_date.rb +18 -0
  17. data/lib/orb/models/coupon.rb +86 -0
  18. data/lib/orb/models/coupon_archive_params.rb +19 -0
  19. data/lib/orb/models/coupon_create_params.rb +102 -0
  20. data/lib/orb/models/coupon_fetch_params.rb +19 -0
  21. data/lib/orb/models/coupon_list_params.rb +53 -0
  22. data/lib/orb/models/coupons/subscription_list_params.rb +40 -0
  23. data/lib/orb/models/credit_note.rb +522 -0
  24. data/lib/orb/models/credit_note_create_params.rb +77 -0
  25. data/lib/orb/models/credit_note_fetch_params.rb +19 -0
  26. data/lib/orb/models/credit_note_list_params.rb +73 -0
  27. data/lib/orb/models/customer.rb +872 -0
  28. data/lib/orb/models/customer_create_params.rb +843 -0
  29. data/lib/orb/models/customer_delete_params.rb +19 -0
  30. data/lib/orb/models/customer_fetch_by_external_id_params.rb +19 -0
  31. data/lib/orb/models/customer_fetch_params.rb +19 -0
  32. data/lib/orb/models/customer_list_params.rb +73 -0
  33. data/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rb +19 -0
  34. data/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rb +19 -0
  35. data/lib/orb/models/customer_update_by_external_id_params.rb +848 -0
  36. data/lib/orb/models/customer_update_params.rb +838 -0
  37. data/lib/orb/models/customers/balance_transaction_create_params.rb +53 -0
  38. data/lib/orb/models/customers/balance_transaction_create_response.rb +167 -0
  39. data/lib/orb/models/customers/balance_transaction_list_params.rb +75 -0
  40. data/lib/orb/models/customers/balance_transaction_list_response.rb +167 -0
  41. data/lib/orb/models/customers/cost_list_by_external_id_params.rb +69 -0
  42. data/lib/orb/models/customers/cost_list_by_external_id_response.rb +106 -0
  43. data/lib/orb/models/customers/cost_list_params.rb +69 -0
  44. data/lib/orb/models/customers/cost_list_response.rb +106 -0
  45. data/lib/orb/models/customers/credit_list_by_external_id_params.rb +59 -0
  46. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +72 -0
  47. data/lib/orb/models/customers/credit_list_params.rb +59 -0
  48. data/lib/orb/models/customers/credit_list_response.rb +72 -0
  49. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +215 -0
  50. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +1311 -0
  51. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +214 -0
  52. data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +1310 -0
  53. data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +141 -0
  54. data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +1310 -0
  55. data/lib/orb/models/customers/credits/ledger_list_params.rb +141 -0
  56. data/lib/orb/models/customers/credits/ledger_list_response.rb +1306 -0
  57. data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +159 -0
  58. data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +154 -0
  59. data/lib/orb/models/customers/credits/top_up_create_params.rb +158 -0
  60. data/lib/orb/models/customers/credits/top_up_create_response.rb +153 -0
  61. data/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rb +29 -0
  62. data/lib/orb/models/customers/credits/top_up_delete_params.rb +29 -0
  63. data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +42 -0
  64. data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +154 -0
  65. data/lib/orb/models/customers/credits/top_up_list_params.rb +42 -0
  66. data/lib/orb/models/customers/credits/top_up_list_response.rb +153 -0
  67. data/lib/orb/models/dimensional_price_group.rb +64 -0
  68. data/lib/orb/models/dimensional_price_group_create_params.rb +63 -0
  69. data/lib/orb/models/dimensional_price_group_list_params.rb +38 -0
  70. data/lib/orb/models/dimensional_price_group_retrieve_params.rb +19 -0
  71. data/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rb +21 -0
  72. data/lib/orb/models/dimensional_price_groups.rb +25 -0
  73. data/lib/orb/models/discount.rb +23 -0
  74. data/lib/orb/models/evaluate_price_group.rb +48 -0
  75. data/lib/orb/models/event_deprecate_params.rb +19 -0
  76. data/lib/orb/models/event_deprecate_response.rb +21 -0
  77. data/lib/orb/models/event_ingest_params.rb +100 -0
  78. data/lib/orb/models/event_ingest_response.rb +77 -0
  79. data/lib/orb/models/event_search_params.rb +45 -0
  80. data/lib/orb/models/event_search_response.rb +87 -0
  81. data/lib/orb/models/event_update_params.rb +58 -0
  82. data/lib/orb/models/event_update_response.rb +21 -0
  83. data/lib/orb/models/events/backfill_close_params.rb +21 -0
  84. data/lib/orb/models/events/backfill_close_response.rb +131 -0
  85. data/lib/orb/models/events/backfill_create_params.rb +97 -0
  86. data/lib/orb/models/events/backfill_create_response.rb +131 -0
  87. data/lib/orb/models/events/backfill_fetch_params.rb +21 -0
  88. data/lib/orb/models/events/backfill_fetch_response.rb +131 -0
  89. data/lib/orb/models/events/backfill_list_params.rb +40 -0
  90. data/lib/orb/models/events/backfill_list_response.rb +131 -0
  91. data/lib/orb/models/events/backfill_revert_params.rb +21 -0
  92. data/lib/orb/models/events/backfill_revert_response.rb +131 -0
  93. data/lib/orb/models/events/event_volumes.rb +54 -0
  94. data/lib/orb/models/events/volume_list_params.rb +64 -0
  95. data/lib/orb/models/invoice.rb +2218 -0
  96. data/lib/orb/models/invoice_create_params.rb +200 -0
  97. data/lib/orb/models/invoice_fetch_params.rb +19 -0
  98. data/lib/orb/models/invoice_fetch_upcoming_params.rb +25 -0
  99. data/lib/orb/models/invoice_fetch_upcoming_response.rb +2226 -0
  100. data/lib/orb/models/invoice_issue_params.rb +34 -0
  101. data/lib/orb/models/invoice_level_discount.rb +21 -0
  102. data/lib/orb/models/invoice_line_item_create_params.rb +62 -0
  103. data/lib/orb/models/invoice_line_item_create_response.rb +929 -0
  104. data/lib/orb/models/invoice_list_params.rb +197 -0
  105. data/lib/orb/models/invoice_mark_paid_params.rb +40 -0
  106. data/lib/orb/models/invoice_pay_params.rb +19 -0
  107. data/lib/orb/models/invoice_update_params.rb +28 -0
  108. data/lib/orb/models/invoice_void_params.rb +19 -0
  109. data/lib/orb/models/item.rb +82 -0
  110. data/lib/orb/models/item_create_params.rb +26 -0
  111. data/lib/orb/models/item_fetch_params.rb +19 -0
  112. data/lib/orb/models/item_list_params.rb +38 -0
  113. data/lib/orb/models/item_update_params.rb +73 -0
  114. data/lib/orb/models/metric_create_params.rb +56 -0
  115. data/lib/orb/models/metric_fetch_params.rb +19 -0
  116. data/lib/orb/models/metric_list_params.rb +73 -0
  117. data/lib/orb/models/metric_update_params.rb +28 -0
  118. data/lib/orb/models/pagination_metadata.rb +25 -0
  119. data/lib/orb/models/percentage_discount.rb +54 -0
  120. data/lib/orb/models/plan.rb +894 -0
  121. data/lib/orb/models/plan_create_params.rb +6702 -0
  122. data/lib/orb/models/plan_fetch_params.rb +19 -0
  123. data/lib/orb/models/plan_list_params.rb +100 -0
  124. data/lib/orb/models/plan_update_params.rb +37 -0
  125. data/lib/orb/models/plans/external_plan_id_fetch_params.rb +21 -0
  126. data/lib/orb/models/plans/external_plan_id_update_params.rb +39 -0
  127. data/lib/orb/models/price.rb +12229 -0
  128. data/lib/orb/models/price_create_params.rb +808 -0
  129. data/lib/orb/models/price_evaluate_params.rb +80 -0
  130. data/lib/orb/models/price_evaluate_response.rb +20 -0
  131. data/lib/orb/models/price_fetch_params.rb +19 -0
  132. data/lib/orb/models/price_list_params.rb +38 -0
  133. data/lib/orb/models/price_update_params.rb +28 -0
  134. data/lib/orb/models/prices/external_price_id_fetch_params.rb +21 -0
  135. data/lib/orb/models/prices/external_price_id_update_params.rb +30 -0
  136. data/lib/orb/models/subscription.rb +1233 -0
  137. data/lib/orb/models/subscription_cancel_params.rb +58 -0
  138. data/lib/orb/models/subscription_cancel_response.rb +1217 -0
  139. data/lib/orb/models/subscription_create_params.rb +15065 -0
  140. data/lib/orb/models/subscription_create_response.rb +1217 -0
  141. data/lib/orb/models/subscription_fetch_costs_params.rb +67 -0
  142. data/lib/orb/models/subscription_fetch_costs_response.rb +104 -0
  143. data/lib/orb/models/subscription_fetch_params.rb +19 -0
  144. data/lib/orb/models/subscription_fetch_schedule_params.rb +73 -0
  145. data/lib/orb/models/subscription_fetch_schedule_response.rb +68 -0
  146. data/lib/orb/models/subscription_fetch_usage_params.rb +135 -0
  147. data/lib/orb/models/subscription_list_params.rb +108 -0
  148. data/lib/orb/models/subscription_price_intervals_params.rb +8358 -0
  149. data/lib/orb/models/subscription_price_intervals_response.rb +1224 -0
  150. data/lib/orb/models/subscription_schedule_plan_change_params.rb +15088 -0
  151. data/lib/orb/models/subscription_schedule_plan_change_response.rb +1224 -0
  152. data/lib/orb/models/subscription_trigger_phase_params.rb +36 -0
  153. data/lib/orb/models/subscription_trigger_phase_response.rb +1224 -0
  154. data/lib/orb/models/subscription_unschedule_cancellation_params.rb +19 -0
  155. data/lib/orb/models/subscription_unschedule_cancellation_response.rb +1224 -0
  156. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rb +26 -0
  157. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +1228 -0
  158. data/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rb +19 -0
  159. data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +1224 -0
  160. data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +90 -0
  161. data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +1224 -0
  162. data/lib/orb/models/subscription_update_params.rb +74 -0
  163. data/lib/orb/models/subscription_update_trial_params.rb +59 -0
  164. data/lib/orb/models/subscription_update_trial_response.rb +1222 -0
  165. data/lib/orb/models/subscription_usage.rb +258 -0
  166. data/lib/orb/models/subscriptions.rb +25 -0
  167. data/lib/orb/models/top_level_ping_params.rb +19 -0
  168. data/lib/orb/models/top_level_ping_response.rb +20 -0
  169. data/lib/orb/models/trial_discount.rb +69 -0
  170. data/lib/orb/models/usage_discount.rb +54 -0
  171. data/lib/orb/page.rb +114 -0
  172. data/lib/orb/request_options.rb +75 -0
  173. data/lib/orb/resources/alerts.rb +239 -0
  174. data/lib/orb/resources/coupons/subscriptions.rb +43 -0
  175. data/lib/orb/resources/coupons.rb +115 -0
  176. data/lib/orb/resources/credit_notes.rb +87 -0
  177. data/lib/orb/resources/customers/balance_transactions.rb +96 -0
  178. data/lib/orb/resources/customers/costs.rb +298 -0
  179. data/lib/orb/resources/customers/credits/ledger.rb +527 -0
  180. data/lib/orb/resources/customers/credits/top_ups.rb +192 -0
  181. data/lib/orb/resources/customers/credits.rb +88 -0
  182. data/lib/orb/resources/customers.rb +321 -0
  183. data/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rb +38 -0
  184. data/lib/orb/resources/dimensional_price_groups.rb +93 -0
  185. data/lib/orb/resources/events/backfills.rb +174 -0
  186. data/lib/orb/resources/events/volume.rb +52 -0
  187. data/lib/orb/resources/events.rb +415 -0
  188. data/lib/orb/resources/invoice_line_items.rb +41 -0
  189. data/lib/orb/resources/invoices.rb +266 -0
  190. data/lib/orb/resources/items.rb +95 -0
  191. data/lib/orb/resources/metrics.rb +114 -0
  192. data/lib/orb/resources/plans/external_plan_id.rb +76 -0
  193. data/lib/orb/resources/plans.rb +133 -0
  194. data/lib/orb/resources/prices/external_price_id.rb +61 -0
  195. data/lib/orb/resources/prices.rb +197 -0
  196. data/lib/orb/resources/subscriptions.rb +1278 -0
  197. data/lib/orb/resources/top_level.rb +37 -0
  198. data/lib/orb/transport/base_client.rb +459 -0
  199. data/lib/orb/transport/pooled_net_requester.rb +182 -0
  200. data/lib/orb/type/array_of.rb +112 -0
  201. data/lib/orb/type/base_model.rb +367 -0
  202. data/lib/orb/type/base_page.rb +61 -0
  203. data/lib/orb/type/boolean_model.rb +52 -0
  204. data/lib/orb/type/converter.rb +217 -0
  205. data/lib/orb/type/enum.rb +101 -0
  206. data/lib/orb/type/hash_of.rb +132 -0
  207. data/lib/orb/type/request_parameters.rb +38 -0
  208. data/lib/orb/type/union.rb +225 -0
  209. data/lib/orb/type/unknown.rb +56 -0
  210. data/lib/orb/type.rb +23 -0
  211. data/lib/orb/util.rb +722 -0
  212. data/lib/orb/version.rb +5 -0
  213. data/lib/orb.rb +247 -0
  214. data/manifest.yaml +15 -0
  215. data/rbi/lib/orb/client.rbi +90 -0
  216. data/rbi/lib/orb/errors.rbi +246 -0
  217. data/rbi/lib/orb/models/alert.rbi +239 -0
  218. data/rbi/lib/orb/models/alert_create_for_customer_params.rbi +86 -0
  219. data/rbi/lib/orb/models/alert_create_for_external_customer_params.rbi +88 -0
  220. data/rbi/lib/orb/models/alert_create_for_subscription_params.rbi +83 -0
  221. data/rbi/lib/orb/models/alert_disable_params.rbi +28 -0
  222. data/rbi/lib/orb/models/alert_enable_params.rbi +28 -0
  223. data/rbi/lib/orb/models/alert_list_params.rbi +95 -0
  224. data/rbi/lib/orb/models/alert_retrieve_params.rbi +20 -0
  225. data/rbi/lib/orb/models/alert_update_params.rbi +51 -0
  226. data/rbi/lib/orb/models/amount_discount.rbi +62 -0
  227. data/rbi/lib/orb/models/billable_metric.rbi +83 -0
  228. data/rbi/lib/orb/models/billing_cycle_relative_date.rbi +19 -0
  229. data/rbi/lib/orb/models/coupon.rbi +90 -0
  230. data/rbi/lib/orb/models/coupon_archive_params.rbi +20 -0
  231. data/rbi/lib/orb/models/coupon_create_params.rbi +120 -0
  232. data/rbi/lib/orb/models/coupon_fetch_params.rbi +20 -0
  233. data/rbi/lib/orb/models/coupon_list_params.rbi +59 -0
  234. data/rbi/lib/orb/models/coupons/subscription_list_params.rbi +41 -0
  235. data/rbi/lib/orb/models/credit_note.rbi +546 -0
  236. data/rbi/lib/orb/models/credit_note_create_params.rbi +84 -0
  237. data/rbi/lib/orb/models/credit_note_fetch_params.rbi +20 -0
  238. data/rbi/lib/orb/models/credit_note_list_params.rbi +74 -0
  239. data/rbi/lib/orb/models/customer.rbi +941 -0
  240. data/rbi/lib/orb/models/customer_create_params.rbi +923 -0
  241. data/rbi/lib/orb/models/customer_delete_params.rbi +20 -0
  242. data/rbi/lib/orb/models/customer_fetch_by_external_id_params.rbi +20 -0
  243. data/rbi/lib/orb/models/customer_fetch_params.rbi +20 -0
  244. data/rbi/lib/orb/models/customer_list_params.rbi +74 -0
  245. data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbi +20 -0
  246. data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rbi +20 -0
  247. data/rbi/lib/orb/models/customer_update_by_external_id_params.rbi +945 -0
  248. data/rbi/lib/orb/models/customer_update_params.rbi +919 -0
  249. data/rbi/lib/orb/models/customers/balance_transaction_create_params.rbi +64 -0
  250. data/rbi/lib/orb/models/customers/balance_transaction_create_response.rbi +199 -0
  251. data/rbi/lib/orb/models/customers/balance_transaction_list_params.rbi +76 -0
  252. data/rbi/lib/orb/models/customers/balance_transaction_list_response.rbi +191 -0
  253. data/rbi/lib/orb/models/customers/cost_list_by_external_id_params.rbi +86 -0
  254. data/rbi/lib/orb/models/customers/cost_list_by_external_id_response.rbi +214 -0
  255. data/rbi/lib/orb/models/customers/cost_list_params.rbi +84 -0
  256. data/rbi/lib/orb/models/customers/cost_list_response.rbi +212 -0
  257. data/rbi/lib/orb/models/customers/credit_list_by_external_id_params.rbi +64 -0
  258. data/rbi/lib/orb/models/customers/credit_list_by_external_id_response.rbi +87 -0
  259. data/rbi/lib/orb/models/customers/credit_list_params.rbi +64 -0
  260. data/rbi/lib/orb/models/customers/credit_list_response.rbi +86 -0
  261. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +270 -0
  262. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi +1670 -0
  263. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_params.rbi +238 -0
  264. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_response.rbi +1626 -0
  265. data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rbi +181 -0
  266. data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rbi +1654 -0
  267. data/rbi/lib/orb/models/customers/credits/ledger_list_params.rbi +144 -0
  268. data/rbi/lib/orb/models/customers/credits/ledger_list_response.rbi +1588 -0
  269. data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rbi +196 -0
  270. data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rbi +198 -0
  271. data/rbi/lib/orb/models/customers/credits/top_up_create_params.rbi +176 -0
  272. data/rbi/lib/orb/models/customers/credits/top_up_create_response.rbi +175 -0
  273. data/rbi/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rbi +31 -0
  274. data/rbi/lib/orb/models/customers/credits/top_up_delete_params.rbi +28 -0
  275. data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rbi +49 -0
  276. data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rbi +188 -0
  277. data/rbi/lib/orb/models/customers/credits/top_up_list_params.rbi +49 -0
  278. data/rbi/lib/orb/models/customers/credits/top_up_list_response.rbi +168 -0
  279. data/rbi/lib/orb/models/dimensional_price_group.rbi +75 -0
  280. data/rbi/lib/orb/models/dimensional_price_group_create_params.rbi +66 -0
  281. data/rbi/lib/orb/models/dimensional_price_group_list_params.rbi +39 -0
  282. data/rbi/lib/orb/models/dimensional_price_group_retrieve_params.rbi +20 -0
  283. data/rbi/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi +22 -0
  284. data/rbi/lib/orb/models/dimensional_price_groups.rbi +35 -0
  285. data/rbi/lib/orb/models/discount.rbi +18 -0
  286. data/rbi/lib/orb/models/evaluate_price_group.rbi +45 -0
  287. data/rbi/lib/orb/models/event_deprecate_params.rbi +20 -0
  288. data/rbi/lib/orb/models/event_deprecate_response.rbi +19 -0
  289. data/rbi/lib/orb/models/event_ingest_params.rbi +120 -0
  290. data/rbi/lib/orb/models/event_ingest_response.rbi +79 -0
  291. data/rbi/lib/orb/models/event_search_params.rbi +53 -0
  292. data/rbi/lib/orb/models/event_search_response.rbi +100 -0
  293. data/rbi/lib/orb/models/event_update_params.rbi +71 -0
  294. data/rbi/lib/orb/models/event_update_response.rbi +19 -0
  295. data/rbi/lib/orb/models/events/backfill_close_params.rbi +22 -0
  296. data/rbi/lib/orb/models/events/backfill_close_response.rbi +127 -0
  297. data/rbi/lib/orb/models/events/backfill_create_params.rbi +97 -0
  298. data/rbi/lib/orb/models/events/backfill_create_response.rbi +128 -0
  299. data/rbi/lib/orb/models/events/backfill_fetch_params.rbi +22 -0
  300. data/rbi/lib/orb/models/events/backfill_fetch_response.rbi +127 -0
  301. data/rbi/lib/orb/models/events/backfill_list_params.rbi +41 -0
  302. data/rbi/lib/orb/models/events/backfill_list_response.rbi +127 -0
  303. data/rbi/lib/orb/models/events/backfill_revert_params.rbi +22 -0
  304. data/rbi/lib/orb/models/events/backfill_revert_response.rbi +128 -0
  305. data/rbi/lib/orb/models/events/event_volumes.rbi +47 -0
  306. data/rbi/lib/orb/models/events/volume_list_params.rbi +69 -0
  307. data/rbi/lib/orb/models/invoice.rbi +2466 -0
  308. data/rbi/lib/orb/models/invoice_create_params.rbi +230 -0
  309. data/rbi/lib/orb/models/invoice_fetch_params.rbi +20 -0
  310. data/rbi/lib/orb/models/invoice_fetch_upcoming_params.rbi +24 -0
  311. data/rbi/lib/orb/models/invoice_fetch_upcoming_response.rbi +2646 -0
  312. data/rbi/lib/orb/models/invoice_issue_params.rbi +32 -0
  313. data/rbi/lib/orb/models/invoice_level_discount.rbi +16 -0
  314. data/rbi/lib/orb/models/invoice_line_item_create_params.rbi +67 -0
  315. data/rbi/lib/orb/models/invoice_line_item_create_response.rbi +1164 -0
  316. data/rbi/lib/orb/models/invoice_list_params.rbi +187 -0
  317. data/rbi/lib/orb/models/invoice_mark_paid_params.rbi +48 -0
  318. data/rbi/lib/orb/models/invoice_pay_params.rbi +20 -0
  319. data/rbi/lib/orb/models/invoice_update_params.rbi +36 -0
  320. data/rbi/lib/orb/models/invoice_void_params.rbi +20 -0
  321. data/rbi/lib/orb/models/item.rbi +101 -0
  322. data/rbi/lib/orb/models/item_create_params.rbi +25 -0
  323. data/rbi/lib/orb/models/item_fetch_params.rbi +20 -0
  324. data/rbi/lib/orb/models/item_list_params.rbi +39 -0
  325. data/rbi/lib/orb/models/item_update_params.rbi +113 -0
  326. data/rbi/lib/orb/models/metric_create_params.rbi +62 -0
  327. data/rbi/lib/orb/models/metric_fetch_params.rbi +20 -0
  328. data/rbi/lib/orb/models/metric_list_params.rbi +74 -0
  329. data/rbi/lib/orb/models/metric_update_params.rbi +36 -0
  330. data/rbi/lib/orb/models/pagination_metadata.rbi +21 -0
  331. data/rbi/lib/orb/models/percentage_discount.rbi +63 -0
  332. data/rbi/lib/orb/models/plan.rbi +1071 -0
  333. data/rbi/lib/orb/models/plan_create_params.rbi +10069 -0
  334. data/rbi/lib/orb/models/plan_fetch_params.rbi +20 -0
  335. data/rbi/lib/orb/models/plan_list_params.rbi +100 -0
  336. data/rbi/lib/orb/models/plan_update_params.rbi +46 -0
  337. data/rbi/lib/orb/models/plans/external_plan_id_fetch_params.rbi +22 -0
  338. data/rbi/lib/orb/models/plans/external_plan_id_update_params.rbi +48 -0
  339. data/rbi/lib/orb/models/price.rbi +15341 -0
  340. data/rbi/lib/orb/models/price_create_params.rbi +885 -0
  341. data/rbi/lib/orb/models/price_evaluate_params.rbi +81 -0
  342. data/rbi/lib/orb/models/price_evaluate_response.rbi +21 -0
  343. data/rbi/lib/orb/models/price_fetch_params.rbi +20 -0
  344. data/rbi/lib/orb/models/price_list_params.rbi +39 -0
  345. data/rbi/lib/orb/models/price_update_params.rbi +36 -0
  346. data/rbi/lib/orb/models/prices/external_price_id_fetch_params.rbi +22 -0
  347. data/rbi/lib/orb/models/prices/external_price_id_update_params.rbi +38 -0
  348. data/rbi/lib/orb/models/subscription.rbi +1381 -0
  349. data/rbi/lib/orb/models/subscription_cancel_params.rbi +75 -0
  350. data/rbi/lib/orb/models/subscription_cancel_response.rbi +1374 -0
  351. data/rbi/lib/orb/models/subscription_create_params.rbi +23422 -0
  352. data/rbi/lib/orb/models/subscription_create_response.rbi +1374 -0
  353. data/rbi/lib/orb/models/subscription_fetch_costs_params.rbi +82 -0
  354. data/rbi/lib/orb/models/subscription_fetch_costs_response.rbi +210 -0
  355. data/rbi/lib/orb/models/subscription_fetch_params.rbi +20 -0
  356. data/rbi/lib/orb/models/subscription_fetch_schedule_params.rbi +74 -0
  357. data/rbi/lib/orb/models/subscription_fetch_schedule_response.rbi +81 -0
  358. data/rbi/lib/orb/models/subscription_fetch_usage_params.rbi +137 -0
  359. data/rbi/lib/orb/models/subscription_list_params.rbi +108 -0
  360. data/rbi/lib/orb/models/subscription_price_intervals_params.rbi +12991 -0
  361. data/rbi/lib/orb/models/subscription_price_intervals_response.rbi +1387 -0
  362. data/rbi/lib/orb/models/subscription_schedule_plan_change_params.rbi +23589 -0
  363. data/rbi/lib/orb/models/subscription_schedule_plan_change_response.rbi +1390 -0
  364. data/rbi/lib/orb/models/subscription_trigger_phase_params.rbi +45 -0
  365. data/rbi/lib/orb/models/subscription_trigger_phase_response.rbi +1381 -0
  366. data/rbi/lib/orb/models/subscription_unschedule_cancellation_params.rbi +20 -0
  367. data/rbi/lib/orb/models/subscription_unschedule_cancellation_response.rbi +1400 -0
  368. data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +25 -0
  369. data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +1451 -0
  370. data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rbi +20 -0
  371. data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rbi +1410 -0
  372. data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_params.rbi +104 -0
  373. data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_response.rbi +1400 -0
  374. data/rbi/lib/orb/models/subscription_update_params.rbi +77 -0
  375. data/rbi/lib/orb/models/subscription_update_trial_params.rbi +63 -0
  376. data/rbi/lib/orb/models/subscription_update_trial_response.rbi +1378 -0
  377. data/rbi/lib/orb/models/subscription_usage.rbi +323 -0
  378. data/rbi/lib/orb/models/subscriptions.rbi +33 -0
  379. data/rbi/lib/orb/models/top_level_ping_params.rbi +20 -0
  380. data/rbi/lib/orb/models/top_level_ping_response.rbi +18 -0
  381. data/rbi/lib/orb/models/trial_discount.rbi +73 -0
  382. data/rbi/lib/orb/models/usage_discount.rbi +62 -0
  383. data/rbi/lib/orb/page.rbi +35 -0
  384. data/rbi/lib/orb/request_options.rbi +48 -0
  385. data/rbi/lib/orb/resources/alerts.rbi +216 -0
  386. data/rbi/lib/orb/resources/coupons/subscriptions.rbi +38 -0
  387. data/rbi/lib/orb/resources/coupons.rbi +96 -0
  388. data/rbi/lib/orb/resources/credit_notes.rbi +74 -0
  389. data/rbi/lib/orb/resources/customers/balance_transactions.rbi +92 -0
  390. data/rbi/lib/orb/resources/customers/costs.rbi +304 -0
  391. data/rbi/lib/orb/resources/customers/credits/ledger.rbi +645 -0
  392. data/rbi/lib/orb/resources/customers/credits/top_ups.rbi +180 -0
  393. data/rbi/lib/orb/resources/customers/credits.rbi +88 -0
  394. data/rbi/lib/orb/resources/customers.rbi +714 -0
  395. data/rbi/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +25 -0
  396. data/rbi/lib/orb/resources/dimensional_price_groups.rbi +78 -0
  397. data/rbi/lib/orb/resources/events/backfills.rbi +161 -0
  398. data/rbi/lib/orb/resources/events/volume.rbi +57 -0
  399. data/rbi/lib/orb/resources/events.rbi +408 -0
  400. data/rbi/lib/orb/resources/invoice_line_items.rbi +44 -0
  401. data/rbi/lib/orb/resources/invoices.rbi +262 -0
  402. data/rbi/lib/orb/resources/items.rbi +65 -0
  403. data/rbi/lib/orb/resources/metrics.rbi +102 -0
  404. data/rbi/lib/orb/resources/plans/external_plan_id.rbi +67 -0
  405. data/rbi/lib/orb/resources/plans.rbi +170 -0
  406. data/rbi/lib/orb/resources/prices/external_price_id.rbi +110 -0
  407. data/rbi/lib/orb/resources/prices.rbi +371 -0
  408. data/rbi/lib/orb/resources/subscriptions.rbi +1469 -0
  409. data/rbi/lib/orb/resources/top_level.rbi +25 -0
  410. data/rbi/lib/orb/transport/base_client.rbi +205 -0
  411. data/rbi/lib/orb/transport/pooled_net_requester.rbi +64 -0
  412. data/rbi/lib/orb/type/array_of.rbi +82 -0
  413. data/rbi/lib/orb/type/base_model.rbi +197 -0
  414. data/rbi/lib/orb/type/base_page.rbi +38 -0
  415. data/rbi/lib/orb/type/boolean_model.rbi +41 -0
  416. data/rbi/lib/orb/type/converter.rbi +95 -0
  417. data/rbi/lib/orb/type/enum.rbi +58 -0
  418. data/rbi/lib/orb/type/hash_of.rbi +86 -0
  419. data/rbi/lib/orb/type/request_parameters.rbi +20 -0
  420. data/rbi/lib/orb/type/union.rbi +66 -0
  421. data/rbi/lib/orb/type/unknown.rbi +37 -0
  422. data/rbi/lib/orb/type.rbi +23 -0
  423. data/rbi/lib/orb/util.rbi +278 -0
  424. data/rbi/lib/orb/version.rbi +5 -0
  425. data/sig/orb/client.rbs +53 -0
  426. data/sig/orb/errors.rbs +201 -0
  427. data/sig/orb/models/alert.rbs +142 -0
  428. data/sig/orb/models/alert_create_for_customer_params.rbs +56 -0
  429. data/sig/orb/models/alert_create_for_external_customer_params.rbs +56 -0
  430. data/sig/orb/models/alert_create_for_subscription_params.rbs +52 -0
  431. data/sig/orb/models/alert_disable_params.rbs +20 -0
  432. data/sig/orb/models/alert_enable_params.rbs +20 -0
  433. data/sig/orb/models/alert_list_params.rbs +57 -0
  434. data/sig/orb/models/alert_retrieve_params.rbs +14 -0
  435. data/sig/orb/models/alert_update_params.rbs +31 -0
  436. data/sig/orb/models/amount_discount.rbs +40 -0
  437. data/sig/orb/models/billable_metric.rbs +50 -0
  438. data/sig/orb/models/billing_cycle_relative_date.rbs +14 -0
  439. data/sig/orb/models/coupon.rbs +51 -0
  440. data/sig/orb/models/coupon_archive_params.rbs +14 -0
  441. data/sig/orb/models/coupon_create_params.rbs +77 -0
  442. data/sig/orb/models/coupon_fetch_params.rbs +14 -0
  443. data/sig/orb/models/coupon_list_params.rbs +37 -0
  444. data/sig/orb/models/coupons/subscription_list_params.rbs +27 -0
  445. data/sig/orb/models/credit_note.rbs +345 -0
  446. data/sig/orb/models/credit_note_create_params.rbs +57 -0
  447. data/sig/orb/models/credit_note_fetch_params.rbs +14 -0
  448. data/sig/orb/models/credit_note_list_params.rbs +45 -0
  449. data/sig/orb/models/customer.rbs +628 -0
  450. data/sig/orb/models/customer_create_params.rbs +624 -0
  451. data/sig/orb/models/customer_delete_params.rbs +14 -0
  452. data/sig/orb/models/customer_fetch_by_external_id_params.rbs +14 -0
  453. data/sig/orb/models/customer_fetch_params.rbs +14 -0
  454. data/sig/orb/models/customer_list_params.rbs +45 -0
  455. data/sig/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbs +15 -0
  456. data/sig/orb/models/customer_sync_payment_methods_from_gateway_params.rbs +15 -0
  457. data/sig/orb/models/customer_update_by_external_id_params.rbs +620 -0
  458. data/sig/orb/models/customer_update_params.rbs +620 -0
  459. data/sig/orb/models/customers/balance_transaction_create_params.rbs +44 -0
  460. data/sig/orb/models/customers/balance_transaction_create_response.rbs +114 -0
  461. data/sig/orb/models/customers/balance_transaction_list_params.rbs +47 -0
  462. data/sig/orb/models/customers/balance_transaction_list_response.rbs +114 -0
  463. data/sig/orb/models/customers/cost_list_by_external_id_params.rbs +48 -0
  464. data/sig/orb/models/customers/cost_list_by_external_id_response.rbs +82 -0
  465. data/sig/orb/models/customers/cost_list_params.rbs +48 -0
  466. data/sig/orb/models/customers/cost_list_response.rbs +80 -0
  467. data/sig/orb/models/customers/credit_list_by_external_id_params.rbs +41 -0
  468. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +55 -0
  469. data/sig/orb/models/customers/credit_list_params.rbs +41 -0
  470. data/sig/orb/models/customers/credit_list_response.rbs +55 -0
  471. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbs +120 -0
  472. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbs +814 -0
  473. data/sig/orb/models/customers/credits/ledger_create_entry_params.rbs +120 -0
  474. data/sig/orb/models/customers/credits/ledger_create_entry_response.rbs +814 -0
  475. data/sig/orb/models/customers/credits/ledger_list_by_external_id_params.rbs +99 -0
  476. data/sig/orb/models/customers/credits/ledger_list_by_external_id_response.rbs +814 -0
  477. data/sig/orb/models/customers/credits/ledger_list_params.rbs +99 -0
  478. data/sig/orb/models/customers/credits/ledger_list_response.rbs +814 -0
  479. data/sig/orb/models/customers/credits/top_up_create_by_external_id_params.rbs +95 -0
  480. data/sig/orb/models/customers/credits/top_up_create_by_external_id_response.rbs +90 -0
  481. data/sig/orb/models/customers/credits/top_up_create_params.rbs +95 -0
  482. data/sig/orb/models/customers/credits/top_up_create_response.rbs +90 -0
  483. data/sig/orb/models/customers/credits/top_up_delete_by_external_id_params.rbs +24 -0
  484. data/sig/orb/models/customers/credits/top_up_delete_params.rbs +24 -0
  485. data/sig/orb/models/customers/credits/top_up_list_by_external_id_params.rbs +29 -0
  486. data/sig/orb/models/customers/credits/top_up_list_by_external_id_response.rbs +90 -0
  487. data/sig/orb/models/customers/credits/top_up_list_params.rbs +29 -0
  488. data/sig/orb/models/customers/credits/top_up_list_response.rbs +90 -0
  489. data/sig/orb/models/dimensional_price_group.rbs +38 -0
  490. data/sig/orb/models/dimensional_price_group_create_params.rbs +39 -0
  491. data/sig/orb/models/dimensional_price_group_list_params.rbs +25 -0
  492. data/sig/orb/models/dimensional_price_group_retrieve_params.rbs +15 -0
  493. data/sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbs +17 -0
  494. data/sig/orb/models/dimensional_price_groups.rbs +22 -0
  495. data/sig/orb/models/discount.rbs +15 -0
  496. data/sig/orb/models/evaluate_price_group.rbs +34 -0
  497. data/sig/orb/models/event_deprecate_params.rbs +14 -0
  498. data/sig/orb/models/event_deprecate_response.rbs +13 -0
  499. data/sig/orb/models/event_ingest_params.rbs +68 -0
  500. data/sig/orb/models/event_ingest_response.rbs +53 -0
  501. data/sig/orb/models/event_search_params.rbs +31 -0
  502. data/sig/orb/models/event_search_response.rbs +55 -0
  503. data/sig/orb/models/event_update_params.rbs +39 -0
  504. data/sig/orb/models/event_update_response.rbs +13 -0
  505. data/sig/orb/models/events/backfill_close_params.rbs +16 -0
  506. data/sig/orb/models/events/backfill_close_response.rbs +73 -0
  507. data/sig/orb/models/events/backfill_create_params.rbs +51 -0
  508. data/sig/orb/models/events/backfill_create_response.rbs +73 -0
  509. data/sig/orb/models/events/backfill_fetch_params.rbs +16 -0
  510. data/sig/orb/models/events/backfill_fetch_response.rbs +73 -0
  511. data/sig/orb/models/events/backfill_list_params.rbs +27 -0
  512. data/sig/orb/models/events/backfill_list_response.rbs +73 -0
  513. data/sig/orb/models/events/backfill_revert_params.rbs +16 -0
  514. data/sig/orb/models/events/backfill_revert_response.rbs +73 -0
  515. data/sig/orb/models/events/event_volumes.rbs +39 -0
  516. data/sig/orb/models/events/volume_list_params.rbs +41 -0
  517. data/sig/orb/models/invoice.rbs +1430 -0
  518. data/sig/orb/models/invoice_create_params.rbs +120 -0
  519. data/sig/orb/models/invoice_fetch_params.rbs +14 -0
  520. data/sig/orb/models/invoice_fetch_upcoming_params.rbs +20 -0
  521. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +1430 -0
  522. data/sig/orb/models/invoice_issue_params.rbs +21 -0
  523. data/sig/orb/models/invoice_level_discount.rbs +14 -0
  524. data/sig/orb/models/invoice_line_item_create_params.rbs +43 -0
  525. data/sig/orb/models/invoice_line_item_create_response.rbs +546 -0
  526. data/sig/orb/models/invoice_list_params.rbs +122 -0
  527. data/sig/orb/models/invoice_mark_paid_params.rbs +27 -0
  528. data/sig/orb/models/invoice_pay_params.rbs +14 -0
  529. data/sig/orb/models/invoice_update_params.rbs +20 -0
  530. data/sig/orb/models/invoice_void_params.rbs +14 -0
  531. data/sig/orb/models/item.rbs +72 -0
  532. data/sig/orb/models/item_create_params.rbs +19 -0
  533. data/sig/orb/models/item_fetch_params.rbs +14 -0
  534. data/sig/orb/models/item_list_params.rbs +25 -0
  535. data/sig/orb/models/item_update_params.rbs +69 -0
  536. data/sig/orb/models/metric_create_params.rbs +39 -0
  537. data/sig/orb/models/metric_fetch_params.rbs +14 -0
  538. data/sig/orb/models/metric_list_params.rbs +45 -0
  539. data/sig/orb/models/metric_update_params.rbs +20 -0
  540. data/sig/orb/models/pagination_metadata.rbs +15 -0
  541. data/sig/orb/models/percentage_discount.rbs +40 -0
  542. data/sig/orb/models/plan.rbs +529 -0
  543. data/sig/orb/models/plan_create_params.rbs +3991 -0
  544. data/sig/orb/models/plan_fetch_params.rbs +14 -0
  545. data/sig/orb/models/plan_list_params.rbs +65 -0
  546. data/sig/orb/models/plan_update_params.rbs +24 -0
  547. data/sig/orb/models/plans/external_plan_id_fetch_params.rbs +16 -0
  548. data/sig/orb/models/plans/external_plan_id_update_params.rbs +26 -0
  549. data/sig/orb/models/price.rbs +8108 -0
  550. data/sig/orb/models/price_create_params.rbs +520 -0
  551. data/sig/orb/models/price_evaluate_params.rbs +45 -0
  552. data/sig/orb/models/price_evaluate_response.rbs +14 -0
  553. data/sig/orb/models/price_fetch_params.rbs +14 -0
  554. data/sig/orb/models/price_list_params.rbs +25 -0
  555. data/sig/orb/models/price_update_params.rbs +20 -0
  556. data/sig/orb/models/prices/external_price_id_fetch_params.rbs +16 -0
  557. data/sig/orb/models/prices/external_price_id_update_params.rbs +22 -0
  558. data/sig/orb/models/subscription.rbs +687 -0
  559. data/sig/orb/models/subscription_cancel_params.rbs +44 -0
  560. data/sig/orb/models/subscription_cancel_response.rbs +687 -0
  561. data/sig/orb/models/subscription_create_params.rbs +9141 -0
  562. data/sig/orb/models/subscription_create_response.rbs +687 -0
  563. data/sig/orb/models/subscription_fetch_costs_params.rbs +46 -0
  564. data/sig/orb/models/subscription_fetch_costs_response.rbs +78 -0
  565. data/sig/orb/models/subscription_fetch_params.rbs +14 -0
  566. data/sig/orb/models/subscription_fetch_schedule_params.rbs +45 -0
  567. data/sig/orb/models/subscription_fetch_schedule_response.rbs +48 -0
  568. data/sig/orb/models/subscription_fetch_usage_params.rbs +80 -0
  569. data/sig/orb/models/subscription_list_params.rbs +69 -0
  570. data/sig/orb/models/subscription_price_intervals_params.rbs +5117 -0
  571. data/sig/orb/models/subscription_price_intervals_response.rbs +687 -0
  572. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +9133 -0
  573. data/sig/orb/models/subscription_schedule_plan_change_response.rbs +687 -0
  574. data/sig/orb/models/subscription_trigger_phase_params.rbs +24 -0
  575. data/sig/orb/models/subscription_trigger_phase_response.rbs +687 -0
  576. data/sig/orb/models/subscription_unschedule_cancellation_params.rbs +15 -0
  577. data/sig/orb/models/subscription_unschedule_cancellation_response.rbs +687 -0
  578. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbs +20 -0
  579. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbs +687 -0
  580. data/sig/orb/models/subscription_unschedule_pending_plan_changes_params.rbs +15 -0
  581. data/sig/orb/models/subscription_unschedule_pending_plan_changes_response.rbs +687 -0
  582. data/sig/orb/models/subscription_update_fixed_fee_quantity_params.rbs +55 -0
  583. data/sig/orb/models/subscription_update_fixed_fee_quantity_response.rbs +687 -0
  584. data/sig/orb/models/subscription_update_params.rbs +39 -0
  585. data/sig/orb/models/subscription_update_trial_params.rbs +39 -0
  586. data/sig/orb/models/subscription_update_trial_response.rbs +687 -0
  587. data/sig/orb/models/subscription_usage.rbs +196 -0
  588. data/sig/orb/models/subscriptions.rbs +22 -0
  589. data/sig/orb/models/top_level_ping_params.rbs +14 -0
  590. data/sig/orb/models/top_level_ping_response.rbs +13 -0
  591. data/sig/orb/models/trial_discount.rbs +44 -0
  592. data/sig/orb/models/usage_discount.rbs +40 -0
  593. data/sig/orb/page.rbs +22 -0
  594. data/sig/orb/request_options.rbs +32 -0
  595. data/sig/orb/resources/alerts.rbs +67 -0
  596. data/sig/orb/resources/coupons/subscriptions.rbs +16 -0
  597. data/sig/orb/resources/coupons.rbs +35 -0
  598. data/sig/orb/resources/credit_notes.rbs +29 -0
  599. data/sig/orb/resources/customers/balance_transactions.rbs +28 -0
  600. data/sig/orb/resources/customers/costs.rbs +27 -0
  601. data/sig/orb/resources/customers/credits/ledger.rbs +75 -0
  602. data/sig/orb/resources/customers/credits/top_ups.rbs +63 -0
  603. data/sig/orb/resources/customers/credits.rbs +31 -0
  604. data/sig/orb/resources/customers.rbs +114 -0
  605. data/sig/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbs +14 -0
  606. data/sig/orb/resources/dimensional_price_groups.rbs +29 -0
  607. data/sig/orb/resources/events/backfills.rbs +41 -0
  608. data/sig/orb/resources/events/volume.rbs +17 -0
  609. data/sig/orb/resources/events.rbs +40 -0
  610. data/sig/orb/resources/invoice_line_items.rbs +17 -0
  611. data/sig/orb/resources/invoices.rbs +84 -0
  612. data/sig/orb/resources/items.rbs +30 -0
  613. data/sig/orb/resources/metrics.rbs +37 -0
  614. data/sig/orb/resources/plans/external_plan_id.rbs +21 -0
  615. data/sig/orb/resources/plans.rbs +44 -0
  616. data/sig/orb/resources/prices/external_price_id.rbs +20 -0
  617. data/sig/orb/resources/prices.rbs +83 -0
  618. data/sig/orb/resources/subscriptions.rbs +194 -0
  619. data/sig/orb/resources/top_level.rbs +11 -0
  620. data/sig/orb/transport/base_client.rbs +110 -0
  621. data/sig/orb/transport/pooled_net_requester.rbs +39 -0
  622. data/sig/orb/type/array_of.rbs +36 -0
  623. data/sig/orb/type/base_model.rbs +77 -0
  624. data/sig/orb/type/base_page.rbs +22 -0
  625. data/sig/orb/type/boolean_model.rbs +18 -0
  626. data/sig/orb/type/converter.rbs +36 -0
  627. data/sig/orb/type/enum.rbs +22 -0
  628. data/sig/orb/type/hash_of.rbs +36 -0
  629. data/sig/orb/type/request_parameters.rbs +13 -0
  630. data/sig/orb/type/union.rbs +37 -0
  631. data/sig/orb/type/unknown.rbs +15 -0
  632. data/sig/orb/type.rbs +22 -0
  633. data/sig/orb/util.rbs +132 -0
  634. data/sig/orb/version.rbs +3 -0
  635. metadata +692 -0
@@ -0,0 +1,1233 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Orb
4
+ module Models
5
+ # @see Orb::Resources::Subscriptions#update
6
+ class Subscription < Orb::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute active_plan_phase_order
13
+ # The current plan phase that is active, only if the subscription's plan has
14
+ # phases.
15
+ #
16
+ # @return [Integer, nil]
17
+ required :active_plan_phase_order, Integer, nil?: true
18
+
19
+ # @!attribute adjustment_intervals
20
+ # The adjustment intervals for this subscription sorted by the start_date of the
21
+ # adjustment interval.
22
+ #
23
+ # @return [Array<Orb::Models::Subscription::AdjustmentInterval>]
24
+ required :adjustment_intervals, -> { Orb::ArrayOf[Orb::Models::Subscription::AdjustmentInterval] }
25
+
26
+ # @!attribute auto_collection
27
+ # Determines whether issued invoices for this subscription will automatically be
28
+ # charged with the saved payment method on the due date. This property defaults to
29
+ # the plan's behavior. If null, defaults to the customer's setting.
30
+ #
31
+ # @return [Boolean, nil]
32
+ required :auto_collection, Orb::BooleanModel, nil?: true
33
+
34
+ # @!attribute billing_cycle_anchor_configuration
35
+ #
36
+ # @return [Orb::Models::Subscription::BillingCycleAnchorConfiguration]
37
+ required :billing_cycle_anchor_configuration,
38
+ -> { Orb::Models::Subscription::BillingCycleAnchorConfiguration }
39
+
40
+ # @!attribute billing_cycle_day
41
+ # The day of the month on which the billing cycle is anchored. If the maximum
42
+ # number of days in a month is greater than this value, the last day of the month
43
+ # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
44
+ # period begins on the 30th.
45
+ #
46
+ # @return [Integer]
47
+ required :billing_cycle_day, Integer
48
+
49
+ # @!attribute created_at
50
+ #
51
+ # @return [Time]
52
+ required :created_at, Time
53
+
54
+ # @!attribute current_billing_period_end_date
55
+ # The end of the current billing period. This is an exclusive timestamp, such that
56
+ # the instant returned is not part of the billing period. Set to null for
57
+ # subscriptions that are not currently active.
58
+ #
59
+ # @return [Time, nil]
60
+ required :current_billing_period_end_date, Time, nil?: true
61
+
62
+ # @!attribute current_billing_period_start_date
63
+ # The start date of the current billing period. This is an inclusive timestamp;
64
+ # the instant returned is exactly the beginning of the billing period. Set to null
65
+ # if the subscription is not currently active.
66
+ #
67
+ # @return [Time, nil]
68
+ required :current_billing_period_start_date, Time, nil?: true
69
+
70
+ # @!attribute customer
71
+ # A customer is a buyer of your products, and the other party to the billing
72
+ # relationship.
73
+ #
74
+ # In Orb, customers are assigned system generated identifiers automatically, but
75
+ # it's often desirable to have these match existing identifiers in your system. To
76
+ # avoid having to denormalize Orb ID information, you can pass in an
77
+ # `external_customer_id` with your own identifier. See
78
+ # [Customer ID Aliases](/events-and-metrics/customer-aliases) for further
79
+ # information about how these aliases work in Orb.
80
+ #
81
+ # In addition to having an identifier in your system, a customer may exist in a
82
+ # payment provider solution like Stripe. Use the `payment_provider_id` and the
83
+ # `payment_provider` enum field to express this mapping.
84
+ #
85
+ # A customer also has a timezone (from the standard
86
+ # [IANA timezone database](https://www.iana.org/time-zones)), which defaults to
87
+ # your account's timezone. See [Timezone localization](/essentials/timezones) for
88
+ # information on what this timezone parameter influences within Orb.
89
+ #
90
+ # @return [Orb::Models::Customer]
91
+ required :customer, -> { Orb::Models::Customer }
92
+
93
+ # @!attribute default_invoice_memo
94
+ # Determines the default memo on this subscriptions' invoices. Note that if this
95
+ # is not provided, it is determined by the plan configuration.
96
+ #
97
+ # @return [String, nil]
98
+ required :default_invoice_memo, String, nil?: true
99
+
100
+ # @!attribute discount_intervals
101
+ # The discount intervals for this subscription sorted by the start_date.
102
+ #
103
+ # @return [Array<Orb::Models::Subscription::DiscountInterval::AmountDiscountInterval, Orb::Models::Subscription::DiscountInterval::PercentageDiscountInterval, Orb::Models::Subscription::DiscountInterval::UsageDiscountInterval>]
104
+ required :discount_intervals, -> { Orb::ArrayOf[union: Orb::Models::Subscription::DiscountInterval] }
105
+
106
+ # @!attribute end_date
107
+ # The date Orb stops billing for this subscription.
108
+ #
109
+ # @return [Time, nil]
110
+ required :end_date, Time, nil?: true
111
+
112
+ # @!attribute fixed_fee_quantity_schedule
113
+ #
114
+ # @return [Array<Orb::Models::Subscription::FixedFeeQuantitySchedule>]
115
+ required :fixed_fee_quantity_schedule,
116
+ -> { Orb::ArrayOf[Orb::Models::Subscription::FixedFeeQuantitySchedule] }
117
+
118
+ # @!attribute invoicing_threshold
119
+ #
120
+ # @return [String, nil]
121
+ required :invoicing_threshold, String, nil?: true
122
+
123
+ # @!attribute maximum_intervals
124
+ # The maximum intervals for this subscription sorted by the start_date.
125
+ #
126
+ # @return [Array<Orb::Models::Subscription::MaximumInterval>]
127
+ required :maximum_intervals, -> { Orb::ArrayOf[Orb::Models::Subscription::MaximumInterval] }
128
+
129
+ # @!attribute metadata
130
+ # User specified key-value pairs for the resource. If not present, this defaults
131
+ # to an empty dictionary. Individual keys can be removed by setting the value to
132
+ # `null`, and the entire metadata mapping can be cleared by setting `metadata` to
133
+ # `null`.
134
+ #
135
+ # @return [Hash{Symbol=>String}]
136
+ required :metadata, Orb::HashOf[String]
137
+
138
+ # @!attribute minimum_intervals
139
+ # The minimum intervals for this subscription sorted by the start_date.
140
+ #
141
+ # @return [Array<Orb::Models::Subscription::MinimumInterval>]
142
+ required :minimum_intervals, -> { Orb::ArrayOf[Orb::Models::Subscription::MinimumInterval] }
143
+
144
+ # @!attribute net_terms
145
+ # Determines the difference between the invoice issue date for subscription
146
+ # invoices as the date that they are due. A value of `0` here represents that the
147
+ # invoice is due on issue, whereas a value of `30` represents that the customer
148
+ # has a month to pay the invoice.
149
+ #
150
+ # @return [Integer]
151
+ required :net_terms, Integer
152
+
153
+ # @!attribute plan
154
+ # The [Plan](/core-concepts#plan-and-price) resource represents a plan that can be
155
+ # subscribed to by a customer. Plans define the billing behavior of the
156
+ # subscription. You can see more about how to configure prices in the
157
+ # [Price resource](/reference/price).
158
+ #
159
+ # @return [Orb::Models::Plan]
160
+ required :plan, -> { Orb::Models::Plan }
161
+
162
+ # @!attribute price_intervals
163
+ # The price intervals for this subscription.
164
+ #
165
+ # @return [Array<Orb::Models::Subscription::PriceInterval>]
166
+ required :price_intervals, -> { Orb::ArrayOf[Orb::Models::Subscription::PriceInterval] }
167
+
168
+ # @!attribute redeemed_coupon
169
+ #
170
+ # @return [Orb::Models::Subscription::RedeemedCoupon, nil]
171
+ required :redeemed_coupon, -> { Orb::Models::Subscription::RedeemedCoupon }, nil?: true
172
+
173
+ # @!attribute start_date
174
+ # The date Orb starts billing for this subscription.
175
+ #
176
+ # @return [Time]
177
+ required :start_date, Time
178
+
179
+ # @!attribute status
180
+ #
181
+ # @return [Symbol, Orb::Models::Subscription::Status]
182
+ required :status, enum: -> { Orb::Models::Subscription::Status }
183
+
184
+ # @!attribute trial_info
185
+ #
186
+ # @return [Orb::Models::Subscription::TrialInfo]
187
+ required :trial_info, -> { Orb::Models::Subscription::TrialInfo }
188
+
189
+ # @!parse
190
+ # # A [subscription](/core-concepts#subscription) represents the purchase of a plan
191
+ # # by a customer.
192
+ # #
193
+ # # By default, subscriptions begin on the day that they're created and renew
194
+ # # automatically for each billing cycle at the cadence that's configured in the
195
+ # # plan definition.
196
+ # #
197
+ # # Subscriptions also default to **beginning of month alignment**, which means the
198
+ # # first invoice issued for the subscription will have pro-rated charges between
199
+ # # the `start_date` and the first of the following month. Subsequent billing
200
+ # # periods will always start and end on a month boundary (e.g. subsequent month
201
+ # # starts for monthly billing).
202
+ # #
203
+ # # Depending on the plan configuration, any _flat_ recurring fees will be billed
204
+ # # either at the beginning (in-advance) or end (in-arrears) of each billing cycle.
205
+ # # Plans default to **in-advance billing**. Usage-based fees are billed in arrears
206
+ # # as usage is accumulated. In the normal course of events, you can expect an
207
+ # # invoice to contain usage-based charges for the previous period, and a recurring
208
+ # # fee for the following period.
209
+ # #
210
+ # # @param id [String]
211
+ # # @param active_plan_phase_order [Integer, nil]
212
+ # # @param adjustment_intervals [Array<Orb::Models::Subscription::AdjustmentInterval>]
213
+ # # @param auto_collection [Boolean, nil]
214
+ # # @param billing_cycle_anchor_configuration [Orb::Models::Subscription::BillingCycleAnchorConfiguration]
215
+ # # @param billing_cycle_day [Integer]
216
+ # # @param created_at [Time]
217
+ # # @param current_billing_period_end_date [Time, nil]
218
+ # # @param current_billing_period_start_date [Time, nil]
219
+ # # @param customer [Orb::Models::Customer]
220
+ # # @param default_invoice_memo [String, nil]
221
+ # # @param discount_intervals [Array<Orb::Models::Subscription::DiscountInterval::AmountDiscountInterval, Orb::Models::Subscription::DiscountInterval::PercentageDiscountInterval, Orb::Models::Subscription::DiscountInterval::UsageDiscountInterval>]
222
+ # # @param end_date [Time, nil]
223
+ # # @param fixed_fee_quantity_schedule [Array<Orb::Models::Subscription::FixedFeeQuantitySchedule>]
224
+ # # @param invoicing_threshold [String, nil]
225
+ # # @param maximum_intervals [Array<Orb::Models::Subscription::MaximumInterval>]
226
+ # # @param metadata [Hash{Symbol=>String}]
227
+ # # @param minimum_intervals [Array<Orb::Models::Subscription::MinimumInterval>]
228
+ # # @param net_terms [Integer]
229
+ # # @param plan [Orb::Models::Plan]
230
+ # # @param price_intervals [Array<Orb::Models::Subscription::PriceInterval>]
231
+ # # @param redeemed_coupon [Orb::Models::Subscription::RedeemedCoupon, nil]
232
+ # # @param start_date [Time]
233
+ # # @param status [Symbol, Orb::Models::Subscription::Status]
234
+ # # @param trial_info [Orb::Models::Subscription::TrialInfo]
235
+ # #
236
+ # def initialize(
237
+ # id:,
238
+ # active_plan_phase_order:,
239
+ # adjustment_intervals:,
240
+ # auto_collection:,
241
+ # billing_cycle_anchor_configuration:,
242
+ # billing_cycle_day:,
243
+ # created_at:,
244
+ # current_billing_period_end_date:,
245
+ # current_billing_period_start_date:,
246
+ # customer:,
247
+ # default_invoice_memo:,
248
+ # discount_intervals:,
249
+ # end_date:,
250
+ # fixed_fee_quantity_schedule:,
251
+ # invoicing_threshold:,
252
+ # maximum_intervals:,
253
+ # metadata:,
254
+ # minimum_intervals:,
255
+ # net_terms:,
256
+ # plan:,
257
+ # price_intervals:,
258
+ # redeemed_coupon:,
259
+ # start_date:,
260
+ # status:,
261
+ # trial_info:,
262
+ # **
263
+ # )
264
+ # super
265
+ # end
266
+
267
+ # def initialize: (Hash | Orb::BaseModel) -> void
268
+
269
+ class AdjustmentInterval < Orb::BaseModel
270
+ # @!attribute id
271
+ #
272
+ # @return [String]
273
+ required :id, String
274
+
275
+ # @!attribute adjustment
276
+ #
277
+ # @return [Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseUsageDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseAmountDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhasePercentageDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMinimumAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMaximumAdjustment]
278
+ required :adjustment, union: -> { Orb::Models::Subscription::AdjustmentInterval::Adjustment }
279
+
280
+ # @!attribute applies_to_price_interval_ids
281
+ # The price interval IDs that this adjustment applies to.
282
+ #
283
+ # @return [Array<String>]
284
+ required :applies_to_price_interval_ids, Orb::ArrayOf[String]
285
+
286
+ # @!attribute end_date
287
+ # The end date of the adjustment interval.
288
+ #
289
+ # @return [Time, nil]
290
+ required :end_date, Time, nil?: true
291
+
292
+ # @!attribute start_date
293
+ # The start date of the adjustment interval.
294
+ #
295
+ # @return [Time]
296
+ required :start_date, Time
297
+
298
+ # @!parse
299
+ # # @param id [String]
300
+ # # @param adjustment [Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseUsageDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseAmountDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhasePercentageDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMinimumAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMaximumAdjustment]
301
+ # # @param applies_to_price_interval_ids [Array<String>]
302
+ # # @param end_date [Time, nil]
303
+ # # @param start_date [Time]
304
+ # #
305
+ # def initialize(id:, adjustment:, applies_to_price_interval_ids:, end_date:, start_date:, **) = super
306
+
307
+ # def initialize: (Hash | Orb::BaseModel) -> void
308
+
309
+ # @see Orb::Models::Subscription::AdjustmentInterval#adjustment
310
+ module Adjustment
311
+ extend Orb::Union
312
+
313
+ discriminator :adjustment_type
314
+
315
+ variant :usage_discount,
316
+ -> { Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseUsageDiscountAdjustment }
317
+
318
+ variant :amount_discount,
319
+ -> { Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseAmountDiscountAdjustment }
320
+
321
+ variant :percentage_discount,
322
+ -> { Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhasePercentageDiscountAdjustment }
323
+
324
+ variant :minimum,
325
+ -> { Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMinimumAdjustment }
326
+
327
+ variant :maximum,
328
+ -> { Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMaximumAdjustment }
329
+
330
+ class PlanPhaseUsageDiscountAdjustment < Orb::BaseModel
331
+ # @!attribute id
332
+ #
333
+ # @return [String]
334
+ required :id, String
335
+
336
+ # @!attribute adjustment_type
337
+ #
338
+ # @return [Symbol, :usage_discount]
339
+ required :adjustment_type, const: :usage_discount
340
+
341
+ # @!attribute applies_to_price_ids
342
+ # The price IDs that this adjustment applies to.
343
+ #
344
+ # @return [Array<String>]
345
+ required :applies_to_price_ids, Orb::ArrayOf[String]
346
+
347
+ # @!attribute is_invoice_level
348
+ # True for adjustments that apply to an entire invocice, false for adjustments
349
+ # that apply to only one price.
350
+ #
351
+ # @return [Boolean]
352
+ required :is_invoice_level, Orb::BooleanModel
353
+
354
+ # @!attribute plan_phase_order
355
+ # The plan phase in which this adjustment is active.
356
+ #
357
+ # @return [Integer, nil]
358
+ required :plan_phase_order, Integer, nil?: true
359
+
360
+ # @!attribute reason
361
+ # The reason for the adjustment.
362
+ #
363
+ # @return [String, nil]
364
+ required :reason, String, nil?: true
365
+
366
+ # @!attribute usage_discount
367
+ # The number of usage units by which to discount the price this adjustment applies
368
+ # to in a given billing period.
369
+ #
370
+ # @return [Float]
371
+ required :usage_discount, Float
372
+
373
+ # @!parse
374
+ # # @param id [String]
375
+ # # @param applies_to_price_ids [Array<String>]
376
+ # # @param is_invoice_level [Boolean]
377
+ # # @param plan_phase_order [Integer, nil]
378
+ # # @param reason [String, nil]
379
+ # # @param usage_discount [Float]
380
+ # # @param adjustment_type [Symbol, :usage_discount]
381
+ # #
382
+ # def initialize(
383
+ # id:,
384
+ # applies_to_price_ids:,
385
+ # is_invoice_level:,
386
+ # plan_phase_order:,
387
+ # reason:,
388
+ # usage_discount:,
389
+ # adjustment_type: :usage_discount,
390
+ # **
391
+ # )
392
+ # super
393
+ # end
394
+
395
+ # def initialize: (Hash | Orb::BaseModel) -> void
396
+ end
397
+
398
+ class PlanPhaseAmountDiscountAdjustment < Orb::BaseModel
399
+ # @!attribute id
400
+ #
401
+ # @return [String]
402
+ required :id, String
403
+
404
+ # @!attribute adjustment_type
405
+ #
406
+ # @return [Symbol, :amount_discount]
407
+ required :adjustment_type, const: :amount_discount
408
+
409
+ # @!attribute amount_discount
410
+ # The amount by which to discount the prices this adjustment applies to in a given
411
+ # billing period.
412
+ #
413
+ # @return [String]
414
+ required :amount_discount, String
415
+
416
+ # @!attribute applies_to_price_ids
417
+ # The price IDs that this adjustment applies to.
418
+ #
419
+ # @return [Array<String>]
420
+ required :applies_to_price_ids, Orb::ArrayOf[String]
421
+
422
+ # @!attribute is_invoice_level
423
+ # True for adjustments that apply to an entire invocice, false for adjustments
424
+ # that apply to only one price.
425
+ #
426
+ # @return [Boolean]
427
+ required :is_invoice_level, Orb::BooleanModel
428
+
429
+ # @!attribute plan_phase_order
430
+ # The plan phase in which this adjustment is active.
431
+ #
432
+ # @return [Integer, nil]
433
+ required :plan_phase_order, Integer, nil?: true
434
+
435
+ # @!attribute reason
436
+ # The reason for the adjustment.
437
+ #
438
+ # @return [String, nil]
439
+ required :reason, String, nil?: true
440
+
441
+ # @!parse
442
+ # # @param id [String]
443
+ # # @param amount_discount [String]
444
+ # # @param applies_to_price_ids [Array<String>]
445
+ # # @param is_invoice_level [Boolean]
446
+ # # @param plan_phase_order [Integer, nil]
447
+ # # @param reason [String, nil]
448
+ # # @param adjustment_type [Symbol, :amount_discount]
449
+ # #
450
+ # def initialize(
451
+ # id:,
452
+ # amount_discount:,
453
+ # applies_to_price_ids:,
454
+ # is_invoice_level:,
455
+ # plan_phase_order:,
456
+ # reason:,
457
+ # adjustment_type: :amount_discount,
458
+ # **
459
+ # )
460
+ # super
461
+ # end
462
+
463
+ # def initialize: (Hash | Orb::BaseModel) -> void
464
+ end
465
+
466
+ class PlanPhasePercentageDiscountAdjustment < Orb::BaseModel
467
+ # @!attribute id
468
+ #
469
+ # @return [String]
470
+ required :id, String
471
+
472
+ # @!attribute adjustment_type
473
+ #
474
+ # @return [Symbol, :percentage_discount]
475
+ required :adjustment_type, const: :percentage_discount
476
+
477
+ # @!attribute applies_to_price_ids
478
+ # The price IDs that this adjustment applies to.
479
+ #
480
+ # @return [Array<String>]
481
+ required :applies_to_price_ids, Orb::ArrayOf[String]
482
+
483
+ # @!attribute is_invoice_level
484
+ # True for adjustments that apply to an entire invocice, false for adjustments
485
+ # that apply to only one price.
486
+ #
487
+ # @return [Boolean]
488
+ required :is_invoice_level, Orb::BooleanModel
489
+
490
+ # @!attribute percentage_discount
491
+ # The percentage (as a value between 0 and 1) by which to discount the price
492
+ # intervals this adjustment applies to in a given billing period.
493
+ #
494
+ # @return [Float]
495
+ required :percentage_discount, Float
496
+
497
+ # @!attribute plan_phase_order
498
+ # The plan phase in which this adjustment is active.
499
+ #
500
+ # @return [Integer, nil]
501
+ required :plan_phase_order, Integer, nil?: true
502
+
503
+ # @!attribute reason
504
+ # The reason for the adjustment.
505
+ #
506
+ # @return [String, nil]
507
+ required :reason, String, nil?: true
508
+
509
+ # @!parse
510
+ # # @param id [String]
511
+ # # @param applies_to_price_ids [Array<String>]
512
+ # # @param is_invoice_level [Boolean]
513
+ # # @param percentage_discount [Float]
514
+ # # @param plan_phase_order [Integer, nil]
515
+ # # @param reason [String, nil]
516
+ # # @param adjustment_type [Symbol, :percentage_discount]
517
+ # #
518
+ # def initialize(
519
+ # id:,
520
+ # applies_to_price_ids:,
521
+ # is_invoice_level:,
522
+ # percentage_discount:,
523
+ # plan_phase_order:,
524
+ # reason:,
525
+ # adjustment_type: :percentage_discount,
526
+ # **
527
+ # )
528
+ # super
529
+ # end
530
+
531
+ # def initialize: (Hash | Orb::BaseModel) -> void
532
+ end
533
+
534
+ class PlanPhaseMinimumAdjustment < Orb::BaseModel
535
+ # @!attribute id
536
+ #
537
+ # @return [String]
538
+ required :id, String
539
+
540
+ # @!attribute adjustment_type
541
+ #
542
+ # @return [Symbol, :minimum]
543
+ required :adjustment_type, const: :minimum
544
+
545
+ # @!attribute applies_to_price_ids
546
+ # The price IDs that this adjustment applies to.
547
+ #
548
+ # @return [Array<String>]
549
+ required :applies_to_price_ids, Orb::ArrayOf[String]
550
+
551
+ # @!attribute is_invoice_level
552
+ # True for adjustments that apply to an entire invocice, false for adjustments
553
+ # that apply to only one price.
554
+ #
555
+ # @return [Boolean]
556
+ required :is_invoice_level, Orb::BooleanModel
557
+
558
+ # @!attribute item_id
559
+ # The item ID that revenue from this minimum will be attributed to.
560
+ #
561
+ # @return [String]
562
+ required :item_id, String
563
+
564
+ # @!attribute minimum_amount
565
+ # The minimum amount to charge in a given billing period for the prices this
566
+ # adjustment applies to.
567
+ #
568
+ # @return [String]
569
+ required :minimum_amount, String
570
+
571
+ # @!attribute plan_phase_order
572
+ # The plan phase in which this adjustment is active.
573
+ #
574
+ # @return [Integer, nil]
575
+ required :plan_phase_order, Integer, nil?: true
576
+
577
+ # @!attribute reason
578
+ # The reason for the adjustment.
579
+ #
580
+ # @return [String, nil]
581
+ required :reason, String, nil?: true
582
+
583
+ # @!parse
584
+ # # @param id [String]
585
+ # # @param applies_to_price_ids [Array<String>]
586
+ # # @param is_invoice_level [Boolean]
587
+ # # @param item_id [String]
588
+ # # @param minimum_amount [String]
589
+ # # @param plan_phase_order [Integer, nil]
590
+ # # @param reason [String, nil]
591
+ # # @param adjustment_type [Symbol, :minimum]
592
+ # #
593
+ # def initialize(
594
+ # id:,
595
+ # applies_to_price_ids:,
596
+ # is_invoice_level:,
597
+ # item_id:,
598
+ # minimum_amount:,
599
+ # plan_phase_order:,
600
+ # reason:,
601
+ # adjustment_type: :minimum,
602
+ # **
603
+ # )
604
+ # super
605
+ # end
606
+
607
+ # def initialize: (Hash | Orb::BaseModel) -> void
608
+ end
609
+
610
+ class PlanPhaseMaximumAdjustment < Orb::BaseModel
611
+ # @!attribute id
612
+ #
613
+ # @return [String]
614
+ required :id, String
615
+
616
+ # @!attribute adjustment_type
617
+ #
618
+ # @return [Symbol, :maximum]
619
+ required :adjustment_type, const: :maximum
620
+
621
+ # @!attribute applies_to_price_ids
622
+ # The price IDs that this adjustment applies to.
623
+ #
624
+ # @return [Array<String>]
625
+ required :applies_to_price_ids, Orb::ArrayOf[String]
626
+
627
+ # @!attribute is_invoice_level
628
+ # True for adjustments that apply to an entire invocice, false for adjustments
629
+ # that apply to only one price.
630
+ #
631
+ # @return [Boolean]
632
+ required :is_invoice_level, Orb::BooleanModel
633
+
634
+ # @!attribute maximum_amount
635
+ # The maximum amount to charge in a given billing period for the prices this
636
+ # adjustment applies to.
637
+ #
638
+ # @return [String]
639
+ required :maximum_amount, String
640
+
641
+ # @!attribute plan_phase_order
642
+ # The plan phase in which this adjustment is active.
643
+ #
644
+ # @return [Integer, nil]
645
+ required :plan_phase_order, Integer, nil?: true
646
+
647
+ # @!attribute reason
648
+ # The reason for the adjustment.
649
+ #
650
+ # @return [String, nil]
651
+ required :reason, String, nil?: true
652
+
653
+ # @!parse
654
+ # # @param id [String]
655
+ # # @param applies_to_price_ids [Array<String>]
656
+ # # @param is_invoice_level [Boolean]
657
+ # # @param maximum_amount [String]
658
+ # # @param plan_phase_order [Integer, nil]
659
+ # # @param reason [String, nil]
660
+ # # @param adjustment_type [Symbol, :maximum]
661
+ # #
662
+ # def initialize(
663
+ # id:,
664
+ # applies_to_price_ids:,
665
+ # is_invoice_level:,
666
+ # maximum_amount:,
667
+ # plan_phase_order:,
668
+ # reason:,
669
+ # adjustment_type: :maximum,
670
+ # **
671
+ # )
672
+ # super
673
+ # end
674
+
675
+ # def initialize: (Hash | Orb::BaseModel) -> void
676
+ end
677
+
678
+ # @!parse
679
+ # # @return [Array(Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseUsageDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseAmountDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhasePercentageDiscountAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMinimumAdjustment, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PlanPhaseMaximumAdjustment)]
680
+ # def self.variants; end
681
+ end
682
+ end
683
+
684
+ # @see Orb::Models::Subscription#billing_cycle_anchor_configuration
685
+ class BillingCycleAnchorConfiguration < Orb::BaseModel
686
+ # @!attribute day
687
+ # The day of the month on which the billing cycle is anchored. If the maximum
688
+ # number of days in a month is greater than this value, the last day of the month
689
+ # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
690
+ # period begins on the 30th.
691
+ #
692
+ # @return [Integer]
693
+ required :day, Integer
694
+
695
+ # @!attribute month
696
+ # The month on which the billing cycle is anchored (e.g. a quarterly price
697
+ # anchored in February would have cycles starting February, May, August, and
698
+ # November).
699
+ #
700
+ # @return [Integer, nil]
701
+ optional :month, Integer, nil?: true
702
+
703
+ # @!attribute year
704
+ # The year on which the billing cycle is anchored (e.g. a 2 year billing cycle
705
+ # anchored on 2021 would have cycles starting on 2021, 2023, 2025, etc.).
706
+ #
707
+ # @return [Integer, nil]
708
+ optional :year, Integer, nil?: true
709
+
710
+ # @!parse
711
+ # # @param day [Integer]
712
+ # # @param month [Integer, nil]
713
+ # # @param year [Integer, nil]
714
+ # #
715
+ # def initialize(day:, month: nil, year: nil, **) = super
716
+
717
+ # def initialize: (Hash | Orb::BaseModel) -> void
718
+ end
719
+
720
+ module DiscountInterval
721
+ extend Orb::Union
722
+
723
+ discriminator :discount_type
724
+
725
+ variant :amount, -> { Orb::Models::Subscription::DiscountInterval::AmountDiscountInterval }
726
+
727
+ variant :percentage, -> { Orb::Models::Subscription::DiscountInterval::PercentageDiscountInterval }
728
+
729
+ variant :usage, -> { Orb::Models::Subscription::DiscountInterval::UsageDiscountInterval }
730
+
731
+ class AmountDiscountInterval < Orb::BaseModel
732
+ # @!attribute amount_discount
733
+ # Only available if discount_type is `amount`.
734
+ #
735
+ # @return [String]
736
+ required :amount_discount, String
737
+
738
+ # @!attribute applies_to_price_ids
739
+ # The price ids that this discount interval applies to.
740
+ #
741
+ # @return [Array<String>]
742
+ required :applies_to_price_ids, Orb::ArrayOf[String]
743
+
744
+ # @!attribute applies_to_price_interval_ids
745
+ # The price interval ids that this discount interval applies to.
746
+ #
747
+ # @return [Array<String>]
748
+ required :applies_to_price_interval_ids, Orb::ArrayOf[String]
749
+
750
+ # @!attribute discount_type
751
+ #
752
+ # @return [Symbol, :amount]
753
+ required :discount_type, const: :amount
754
+
755
+ # @!attribute end_date
756
+ # The end date of the discount interval.
757
+ #
758
+ # @return [Time, nil]
759
+ required :end_date, Time, nil?: true
760
+
761
+ # @!attribute start_date
762
+ # The start date of the discount interval.
763
+ #
764
+ # @return [Time]
765
+ required :start_date, Time
766
+
767
+ # @!parse
768
+ # # @param amount_discount [String]
769
+ # # @param applies_to_price_ids [Array<String>]
770
+ # # @param applies_to_price_interval_ids [Array<String>]
771
+ # # @param end_date [Time, nil]
772
+ # # @param start_date [Time]
773
+ # # @param discount_type [Symbol, :amount]
774
+ # #
775
+ # def initialize(
776
+ # amount_discount:,
777
+ # applies_to_price_ids:,
778
+ # applies_to_price_interval_ids:,
779
+ # end_date:,
780
+ # start_date:,
781
+ # discount_type: :amount,
782
+ # **
783
+ # )
784
+ # super
785
+ # end
786
+
787
+ # def initialize: (Hash | Orb::BaseModel) -> void
788
+ end
789
+
790
+ class PercentageDiscountInterval < Orb::BaseModel
791
+ # @!attribute applies_to_price_ids
792
+ # The price ids that this discount interval applies to.
793
+ #
794
+ # @return [Array<String>]
795
+ required :applies_to_price_ids, Orb::ArrayOf[String]
796
+
797
+ # @!attribute applies_to_price_interval_ids
798
+ # The price interval ids that this discount interval applies to.
799
+ #
800
+ # @return [Array<String>]
801
+ required :applies_to_price_interval_ids, Orb::ArrayOf[String]
802
+
803
+ # @!attribute discount_type
804
+ #
805
+ # @return [Symbol, :percentage]
806
+ required :discount_type, const: :percentage
807
+
808
+ # @!attribute end_date
809
+ # The end date of the discount interval.
810
+ #
811
+ # @return [Time, nil]
812
+ required :end_date, Time, nil?: true
813
+
814
+ # @!attribute percentage_discount
815
+ # Only available if discount_type is `percentage`.This is a number between 0
816
+ # and 1.
817
+ #
818
+ # @return [Float]
819
+ required :percentage_discount, Float
820
+
821
+ # @!attribute start_date
822
+ # The start date of the discount interval.
823
+ #
824
+ # @return [Time]
825
+ required :start_date, Time
826
+
827
+ # @!parse
828
+ # # @param applies_to_price_ids [Array<String>]
829
+ # # @param applies_to_price_interval_ids [Array<String>]
830
+ # # @param end_date [Time, nil]
831
+ # # @param percentage_discount [Float]
832
+ # # @param start_date [Time]
833
+ # # @param discount_type [Symbol, :percentage]
834
+ # #
835
+ # def initialize(
836
+ # applies_to_price_ids:,
837
+ # applies_to_price_interval_ids:,
838
+ # end_date:,
839
+ # percentage_discount:,
840
+ # start_date:,
841
+ # discount_type: :percentage,
842
+ # **
843
+ # )
844
+ # super
845
+ # end
846
+
847
+ # def initialize: (Hash | Orb::BaseModel) -> void
848
+ end
849
+
850
+ class UsageDiscountInterval < Orb::BaseModel
851
+ # @!attribute applies_to_price_ids
852
+ # The price ids that this discount interval applies to.
853
+ #
854
+ # @return [Array<String>]
855
+ required :applies_to_price_ids, Orb::ArrayOf[String]
856
+
857
+ # @!attribute applies_to_price_interval_ids
858
+ # The price interval ids that this discount interval applies to.
859
+ #
860
+ # @return [Array<String>]
861
+ required :applies_to_price_interval_ids, Orb::ArrayOf[String]
862
+
863
+ # @!attribute discount_type
864
+ #
865
+ # @return [Symbol, :usage]
866
+ required :discount_type, const: :usage
867
+
868
+ # @!attribute end_date
869
+ # The end date of the discount interval.
870
+ #
871
+ # @return [Time, nil]
872
+ required :end_date, Time, nil?: true
873
+
874
+ # @!attribute start_date
875
+ # The start date of the discount interval.
876
+ #
877
+ # @return [Time]
878
+ required :start_date, Time
879
+
880
+ # @!attribute usage_discount
881
+ # Only available if discount_type is `usage`. Number of usage units that this
882
+ # discount is for
883
+ #
884
+ # @return [Float]
885
+ required :usage_discount, Float
886
+
887
+ # @!parse
888
+ # # @param applies_to_price_ids [Array<String>]
889
+ # # @param applies_to_price_interval_ids [Array<String>]
890
+ # # @param end_date [Time, nil]
891
+ # # @param start_date [Time]
892
+ # # @param usage_discount [Float]
893
+ # # @param discount_type [Symbol, :usage]
894
+ # #
895
+ # def initialize(
896
+ # applies_to_price_ids:,
897
+ # applies_to_price_interval_ids:,
898
+ # end_date:,
899
+ # start_date:,
900
+ # usage_discount:,
901
+ # discount_type: :usage,
902
+ # **
903
+ # )
904
+ # super
905
+ # end
906
+
907
+ # def initialize: (Hash | Orb::BaseModel) -> void
908
+ end
909
+
910
+ # @!parse
911
+ # # @return [Array(Orb::Models::Subscription::DiscountInterval::AmountDiscountInterval, Orb::Models::Subscription::DiscountInterval::PercentageDiscountInterval, Orb::Models::Subscription::DiscountInterval::UsageDiscountInterval)]
912
+ # def self.variants; end
913
+ end
914
+
915
+ class FixedFeeQuantitySchedule < Orb::BaseModel
916
+ # @!attribute end_date
917
+ #
918
+ # @return [Time, nil]
919
+ required :end_date, Time, nil?: true
920
+
921
+ # @!attribute price_id
922
+ #
923
+ # @return [String]
924
+ required :price_id, String
925
+
926
+ # @!attribute quantity
927
+ #
928
+ # @return [Float]
929
+ required :quantity, Float
930
+
931
+ # @!attribute start_date
932
+ #
933
+ # @return [Time]
934
+ required :start_date, Time
935
+
936
+ # @!parse
937
+ # # @param end_date [Time, nil]
938
+ # # @param price_id [String]
939
+ # # @param quantity [Float]
940
+ # # @param start_date [Time]
941
+ # #
942
+ # def initialize(end_date:, price_id:, quantity:, start_date:, **) = super
943
+
944
+ # def initialize: (Hash | Orb::BaseModel) -> void
945
+ end
946
+
947
+ class MaximumInterval < Orb::BaseModel
948
+ # @!attribute applies_to_price_ids
949
+ # The price ids that this maximum interval applies to.
950
+ #
951
+ # @return [Array<String>]
952
+ required :applies_to_price_ids, Orb::ArrayOf[String]
953
+
954
+ # @!attribute applies_to_price_interval_ids
955
+ # The price interval ids that this maximum interval applies to.
956
+ #
957
+ # @return [Array<String>]
958
+ required :applies_to_price_interval_ids, Orb::ArrayOf[String]
959
+
960
+ # @!attribute end_date
961
+ # The end date of the maximum interval.
962
+ #
963
+ # @return [Time, nil]
964
+ required :end_date, Time, nil?: true
965
+
966
+ # @!attribute maximum_amount
967
+ # The maximum amount to charge in a given billing period for the price intervals
968
+ # this transform applies to.
969
+ #
970
+ # @return [String]
971
+ required :maximum_amount, String
972
+
973
+ # @!attribute start_date
974
+ # The start date of the maximum interval.
975
+ #
976
+ # @return [Time]
977
+ required :start_date, Time
978
+
979
+ # @!parse
980
+ # # @param applies_to_price_ids [Array<String>]
981
+ # # @param applies_to_price_interval_ids [Array<String>]
982
+ # # @param end_date [Time, nil]
983
+ # # @param maximum_amount [String]
984
+ # # @param start_date [Time]
985
+ # #
986
+ # def initialize(applies_to_price_ids:, applies_to_price_interval_ids:, end_date:, maximum_amount:, start_date:, **) = super
987
+
988
+ # def initialize: (Hash | Orb::BaseModel) -> void
989
+ end
990
+
991
+ class MinimumInterval < Orb::BaseModel
992
+ # @!attribute applies_to_price_ids
993
+ # The price ids that this minimum interval applies to.
994
+ #
995
+ # @return [Array<String>]
996
+ required :applies_to_price_ids, Orb::ArrayOf[String]
997
+
998
+ # @!attribute applies_to_price_interval_ids
999
+ # The price interval ids that this minimum interval applies to.
1000
+ #
1001
+ # @return [Array<String>]
1002
+ required :applies_to_price_interval_ids, Orb::ArrayOf[String]
1003
+
1004
+ # @!attribute end_date
1005
+ # The end date of the minimum interval.
1006
+ #
1007
+ # @return [Time, nil]
1008
+ required :end_date, Time, nil?: true
1009
+
1010
+ # @!attribute minimum_amount
1011
+ # The minimum amount to charge in a given billing period for the price intervals
1012
+ # this minimum applies to.
1013
+ #
1014
+ # @return [String]
1015
+ required :minimum_amount, String
1016
+
1017
+ # @!attribute start_date
1018
+ # The start date of the minimum interval.
1019
+ #
1020
+ # @return [Time]
1021
+ required :start_date, Time
1022
+
1023
+ # @!parse
1024
+ # # @param applies_to_price_ids [Array<String>]
1025
+ # # @param applies_to_price_interval_ids [Array<String>]
1026
+ # # @param end_date [Time, nil]
1027
+ # # @param minimum_amount [String]
1028
+ # # @param start_date [Time]
1029
+ # #
1030
+ # def initialize(applies_to_price_ids:, applies_to_price_interval_ids:, end_date:, minimum_amount:, start_date:, **) = super
1031
+
1032
+ # def initialize: (Hash | Orb::BaseModel) -> void
1033
+ end
1034
+
1035
+ class PriceInterval < Orb::BaseModel
1036
+ # @!attribute id
1037
+ #
1038
+ # @return [String]
1039
+ required :id, String
1040
+
1041
+ # @!attribute billing_cycle_day
1042
+ # The day of the month that Orb bills for this price
1043
+ #
1044
+ # @return [Integer]
1045
+ required :billing_cycle_day, Integer
1046
+
1047
+ # @!attribute current_billing_period_end_date
1048
+ # The end of the current billing period. This is an exclusive timestamp, such that
1049
+ # the instant returned is exactly the end of the billing period. Set to null if
1050
+ # this price interval is not currently active.
1051
+ #
1052
+ # @return [Time, nil]
1053
+ required :current_billing_period_end_date, Time, nil?: true
1054
+
1055
+ # @!attribute current_billing_period_start_date
1056
+ # The start date of the current billing period. This is an inclusive timestamp;
1057
+ # the instant returned is exactly the beginning of the billing period. Set to null
1058
+ # if this price interval is not currently active.
1059
+ #
1060
+ # @return [Time, nil]
1061
+ required :current_billing_period_start_date, Time, nil?: true
1062
+
1063
+ # @!attribute end_date
1064
+ # The end date of the price interval. This is the date that Orb stops billing for
1065
+ # this price.
1066
+ #
1067
+ # @return [Time, nil]
1068
+ required :end_date, Time, nil?: true
1069
+
1070
+ # @!attribute filter
1071
+ # An additional filter to apply to usage queries.
1072
+ #
1073
+ # @return [String, nil]
1074
+ required :filter, String, nil?: true
1075
+
1076
+ # @!attribute fixed_fee_quantity_transitions
1077
+ # The fixed fee quantity transitions for this price interval. This is only
1078
+ # relevant for fixed fees.
1079
+ #
1080
+ # @return [Array<Orb::Models::Subscription::PriceInterval::FixedFeeQuantityTransition>, nil]
1081
+ required :fixed_fee_quantity_transitions,
1082
+ -> { Orb::ArrayOf[Orb::Models::Subscription::PriceInterval::FixedFeeQuantityTransition] },
1083
+ nil?: true
1084
+
1085
+ # @!attribute price
1086
+ # The Price resource represents a price that can be billed on a subscription,
1087
+ # resulting in a charge on an invoice in the form of an invoice line item. Prices
1088
+ # take a quantity and determine an amount to bill.
1089
+ #
1090
+ # Orb supports a few different pricing models out of the box. Each of these models
1091
+ # is serialized differently in a given Price object. The model_type field
1092
+ # determines the key for the configuration object that is present.
1093
+ #
1094
+ # For more on the types of prices, see
1095
+ # [the core concepts documentation](/core-concepts#plan-and-price)
1096
+ #
1097
+ # @return [Orb::Models::Price::UnitPrice, Orb::Models::Price::PackagePrice, Orb::Models::Price::MatrixPrice, Orb::Models::Price::TieredPrice, Orb::Models::Price::TieredBpsPrice, Orb::Models::Price::BpsPrice, Orb::Models::Price::BulkBpsPrice, Orb::Models::Price::BulkPrice, Orb::Models::Price::ThresholdTotalAmountPrice, Orb::Models::Price::TieredPackagePrice, Orb::Models::Price::GroupedTieredPrice, Orb::Models::Price::TieredWithMinimumPrice, Orb::Models::Price::TieredPackageWithMinimumPrice, Orb::Models::Price::PackageWithAllocationPrice, Orb::Models::Price::UnitWithPercentPrice, Orb::Models::Price::MatrixWithAllocationPrice, Orb::Models::Price::TieredWithProrationPrice, Orb::Models::Price::UnitWithProrationPrice, Orb::Models::Price::GroupedAllocationPrice, Orb::Models::Price::GroupedWithProratedMinimumPrice, Orb::Models::Price::GroupedWithMeteredMinimumPrice, Orb::Models::Price::MatrixWithDisplayNamePrice, Orb::Models::Price::BulkWithProrationPrice, Orb::Models::Price::GroupedTieredPackagePrice, Orb::Models::Price::MaxGroupTieredPackagePrice, Orb::Models::Price::ScalableMatrixWithUnitPricingPrice, Orb::Models::Price::ScalableMatrixWithTieredPricingPrice, Orb::Models::Price::CumulativeGroupedBulkPrice]
1098
+ required :price, union: -> { Orb::Models::Price }
1099
+
1100
+ # @!attribute start_date
1101
+ # The start date of the price interval. This is the date that Orb starts billing
1102
+ # for this price.
1103
+ #
1104
+ # @return [Time]
1105
+ required :start_date, Time
1106
+
1107
+ # @!attribute usage_customer_ids
1108
+ # A list of customer IDs whose usage events will be aggregated and billed under
1109
+ # this price interval.
1110
+ #
1111
+ # @return [Array<String>, nil]
1112
+ required :usage_customer_ids, Orb::ArrayOf[String], nil?: true
1113
+
1114
+ # @!parse
1115
+ # # The Price Interval resource represents a period of time for which a price will
1116
+ # # bill on a subscription. A subscription’s price intervals define its billing
1117
+ # # behavior.
1118
+ # #
1119
+ # # @param id [String]
1120
+ # # @param billing_cycle_day [Integer]
1121
+ # # @param current_billing_period_end_date [Time, nil]
1122
+ # # @param current_billing_period_start_date [Time, nil]
1123
+ # # @param end_date [Time, nil]
1124
+ # # @param filter [String, nil]
1125
+ # # @param fixed_fee_quantity_transitions [Array<Orb::Models::Subscription::PriceInterval::FixedFeeQuantityTransition>, nil]
1126
+ # # @param price [Orb::Models::Price::UnitPrice, Orb::Models::Price::PackagePrice, Orb::Models::Price::MatrixPrice, Orb::Models::Price::TieredPrice, Orb::Models::Price::TieredBpsPrice, Orb::Models::Price::BpsPrice, Orb::Models::Price::BulkBpsPrice, Orb::Models::Price::BulkPrice, Orb::Models::Price::ThresholdTotalAmountPrice, Orb::Models::Price::TieredPackagePrice, Orb::Models::Price::GroupedTieredPrice, Orb::Models::Price::TieredWithMinimumPrice, Orb::Models::Price::TieredPackageWithMinimumPrice, Orb::Models::Price::PackageWithAllocationPrice, Orb::Models::Price::UnitWithPercentPrice, Orb::Models::Price::MatrixWithAllocationPrice, Orb::Models::Price::TieredWithProrationPrice, Orb::Models::Price::UnitWithProrationPrice, Orb::Models::Price::GroupedAllocationPrice, Orb::Models::Price::GroupedWithProratedMinimumPrice, Orb::Models::Price::GroupedWithMeteredMinimumPrice, Orb::Models::Price::MatrixWithDisplayNamePrice, Orb::Models::Price::BulkWithProrationPrice, Orb::Models::Price::GroupedTieredPackagePrice, Orb::Models::Price::MaxGroupTieredPackagePrice, Orb::Models::Price::ScalableMatrixWithUnitPricingPrice, Orb::Models::Price::ScalableMatrixWithTieredPricingPrice, Orb::Models::Price::CumulativeGroupedBulkPrice]
1127
+ # # @param start_date [Time]
1128
+ # # @param usage_customer_ids [Array<String>, nil]
1129
+ # #
1130
+ # def initialize(
1131
+ # id:,
1132
+ # billing_cycle_day:,
1133
+ # current_billing_period_end_date:,
1134
+ # current_billing_period_start_date:,
1135
+ # end_date:,
1136
+ # filter:,
1137
+ # fixed_fee_quantity_transitions:,
1138
+ # price:,
1139
+ # start_date:,
1140
+ # usage_customer_ids:,
1141
+ # **
1142
+ # )
1143
+ # super
1144
+ # end
1145
+
1146
+ # def initialize: (Hash | Orb::BaseModel) -> void
1147
+
1148
+ class FixedFeeQuantityTransition < Orb::BaseModel
1149
+ # @!attribute effective_date
1150
+ #
1151
+ # @return [Time]
1152
+ required :effective_date, Time
1153
+
1154
+ # @!attribute price_id
1155
+ #
1156
+ # @return [String]
1157
+ required :price_id, String
1158
+
1159
+ # @!attribute quantity
1160
+ #
1161
+ # @return [Integer]
1162
+ required :quantity, Integer
1163
+
1164
+ # @!parse
1165
+ # # @param effective_date [Time]
1166
+ # # @param price_id [String]
1167
+ # # @param quantity [Integer]
1168
+ # #
1169
+ # def initialize(effective_date:, price_id:, quantity:, **) = super
1170
+
1171
+ # def initialize: (Hash | Orb::BaseModel) -> void
1172
+ end
1173
+ end
1174
+
1175
+ # @see Orb::Models::Subscription#redeemed_coupon
1176
+ class RedeemedCoupon < Orb::BaseModel
1177
+ # @!attribute coupon_id
1178
+ #
1179
+ # @return [String]
1180
+ required :coupon_id, String
1181
+
1182
+ # @!attribute end_date
1183
+ #
1184
+ # @return [Time, nil]
1185
+ required :end_date, Time, nil?: true
1186
+
1187
+ # @!attribute start_date
1188
+ #
1189
+ # @return [Time]
1190
+ required :start_date, Time
1191
+
1192
+ # @!parse
1193
+ # # @param coupon_id [String]
1194
+ # # @param end_date [Time, nil]
1195
+ # # @param start_date [Time]
1196
+ # #
1197
+ # def initialize(coupon_id:, end_date:, start_date:, **) = super
1198
+
1199
+ # def initialize: (Hash | Orb::BaseModel) -> void
1200
+ end
1201
+
1202
+ # @see Orb::Models::Subscription#status
1203
+ module Status
1204
+ extend Orb::Enum
1205
+
1206
+ ACTIVE = :active
1207
+ ENDED = :ended
1208
+ UPCOMING = :upcoming
1209
+
1210
+ finalize!
1211
+
1212
+ # @!parse
1213
+ # # @return [Array<Symbol>]
1214
+ # def self.values; end
1215
+ end
1216
+
1217
+ # @see Orb::Models::Subscription#trial_info
1218
+ class TrialInfo < Orb::BaseModel
1219
+ # @!attribute end_date
1220
+ #
1221
+ # @return [Time, nil]
1222
+ required :end_date, Time, nil?: true
1223
+
1224
+ # @!parse
1225
+ # # @param end_date [Time, nil]
1226
+ # #
1227
+ # def initialize(end_date:, **) = super
1228
+
1229
+ # def initialize: (Hash | Orb::BaseModel) -> void
1230
+ end
1231
+ end
1232
+ end
1233
+ end