orb-billing 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +59 -49
  4. data/lib/orb/client.rb +4 -4
  5. data/lib/orb/file_part.rb +55 -0
  6. data/lib/orb/internal/page.rb +4 -8
  7. data/lib/orb/internal/transport/base_client.rb +7 -7
  8. data/lib/orb/internal/transport/pooled_net_requester.rb +2 -2
  9. data/lib/orb/internal/type/array_of.rb +11 -0
  10. data/lib/orb/internal/type/base_model.rb +32 -14
  11. data/lib/orb/internal/type/base_page.rb +9 -1
  12. data/lib/orb/internal/type/boolean.rb +4 -0
  13. data/lib/orb/internal/type/converter.rb +4 -1
  14. data/lib/orb/internal/type/enum.rb +9 -5
  15. data/lib/orb/internal/type/{io_like.rb → file_input.rb} +33 -15
  16. data/lib/orb/internal/type/hash_of.rb +11 -0
  17. data/lib/orb/internal/type/request_parameters.rb +1 -2
  18. data/lib/orb/internal/type/union.rb +10 -1
  19. data/lib/orb/internal/type/unknown.rb +4 -0
  20. data/lib/orb/internal/util.rb +69 -61
  21. data/lib/orb/internal.rb +0 -1
  22. data/lib/orb/models/alert.rb +68 -71
  23. data/lib/orb/models/alert_create_for_customer_params.rb +20 -25
  24. data/lib/orb/models/alert_create_for_external_customer_params.rb +20 -25
  25. data/lib/orb/models/alert_create_for_subscription_params.rb +20 -25
  26. data/lib/orb/models/alert_disable_params.rb +5 -9
  27. data/lib/orb/models/alert_enable_params.rb +5 -9
  28. data/lib/orb/models/alert_list_params.rb +26 -36
  29. data/lib/orb/models/alert_retrieve_params.rb +3 -8
  30. data/lib/orb/models/alert_update_params.rb +14 -18
  31. data/lib/orb/models/amount_discount.rb +14 -14
  32. data/lib/orb/models/billable_metric.rb +23 -20
  33. data/lib/orb/models/billing_cycle_relative_date.rb +2 -5
  34. data/lib/orb/models/coupon.rb +28 -21
  35. data/lib/orb/models/coupon_archive_params.rb +3 -8
  36. data/lib/orb/models/coupon_create_params.rb +24 -29
  37. data/lib/orb/models/coupon_fetch_params.rb +3 -8
  38. data/lib/orb/models/coupon_list_params.rb +17 -17
  39. data/lib/orb/models/coupons/subscription_list_params.rb +12 -15
  40. data/lib/orb/models/credit_note.rb +100 -166
  41. data/lib/orb/models/credit_note_create_params.rb +15 -23
  42. data/lib/orb/models/credit_note_fetch_params.rb +3 -8
  43. data/lib/orb/models/credit_note_list_params.rb +20 -30
  44. data/lib/orb/models/customer.rb +224 -271
  45. data/lib/orb/models/customer_create_params.rb +211 -252
  46. data/lib/orb/models/customer_delete_params.rb +3 -8
  47. data/lib/orb/models/customer_fetch_by_external_id_params.rb +3 -8
  48. data/lib/orb/models/customer_fetch_params.rb +3 -8
  49. data/lib/orb/models/customer_list_params.rb +20 -30
  50. data/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rb +3 -8
  51. data/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rb +3 -8
  52. data/lib/orb/models/customer_update_by_external_id_params.rb +207 -250
  53. data/lib/orb/models/customer_update_params.rb +207 -250
  54. data/lib/orb/models/customers/balance_transaction_create_params.rb +11 -16
  55. data/lib/orb/models/customers/balance_transaction_create_response.rb +33 -51
  56. data/lib/orb/models/customers/balance_transaction_list_params.rb +20 -30
  57. data/lib/orb/models/customers/balance_transaction_list_response.rb +33 -51
  58. data/lib/orb/models/customers/cost_list_by_external_id_params.rb +17 -17
  59. data/lib/orb/models/customers/cost_list_by_external_id_response.rb +22 -26
  60. data/lib/orb/models/customers/cost_list_params.rb +17 -17
  61. data/lib/orb/models/customers/cost_list_response.rb +22 -26
  62. data/lib/orb/models/customers/credit_list_by_external_id_params.rb +18 -22
  63. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +10 -17
  64. data/lib/orb/models/customers/credit_list_params.rb +18 -22
  65. data/lib/orb/models/customers/credit_list_response.rb +10 -17
  66. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +64 -66
  67. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +300 -406
  68. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +63 -66
  69. data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +300 -406
  70. data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +33 -48
  71. data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +300 -406
  72. data/lib/orb/models/customers/credits/ledger_list_params.rb +32 -48
  73. data/lib/orb/models/customers/credits/ledger_list_response.rb +300 -406
  74. data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +47 -50
  75. data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +43 -46
  76. data/lib/orb/models/customers/credits/top_up_create_params.rb +46 -50
  77. data/lib/orb/models/customers/credits/top_up_create_response.rb +42 -46
  78. data/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rb +4 -9
  79. data/lib/orb/models/customers/credits/top_up_delete_params.rb +4 -9
  80. data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +12 -15
  81. data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +43 -46
  82. data/lib/orb/models/customers/credits/top_up_list_params.rb +12 -15
  83. data/lib/orb/models/customers/credits/top_up_list_response.rb +42 -46
  84. data/lib/orb/models/dimensional_price_group.rb +21 -15
  85. data/lib/orb/models/dimensional_price_group_create_params.rb +17 -23
  86. data/lib/orb/models/dimensional_price_group_list_params.rb +12 -15
  87. data/lib/orb/models/dimensional_price_group_retrieve_params.rb +3 -8
  88. data/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rb +3 -8
  89. data/lib/orb/models/dimensional_price_groups.rb +3 -7
  90. data/lib/orb/models/discount.rb +2 -3
  91. data/lib/orb/models/evaluate_price_group.rb +8 -11
  92. data/lib/orb/models/event_deprecate_params.rb +3 -8
  93. data/lib/orb/models/event_deprecate_response.rb +2 -6
  94. data/lib/orb/models/event_ingest_params.rb +33 -27
  95. data/lib/orb/models/event_ingest_response.rb +23 -24
  96. data/lib/orb/models/event_search_params.rb +15 -11
  97. data/lib/orb/models/event_search_response.rb +27 -22
  98. data/lib/orb/models/event_update_params.rb +19 -13
  99. data/lib/orb/models/event_update_response.rb +2 -6
  100. data/lib/orb/models/events/backfill_close_params.rb +3 -8
  101. data/lib/orb/models/events/backfill_close_response.rb +34 -39
  102. data/lib/orb/models/events/backfill_create_params.rb +28 -32
  103. data/lib/orb/models/events/backfill_create_response.rb +34 -39
  104. data/lib/orb/models/events/backfill_fetch_params.rb +3 -8
  105. data/lib/orb/models/events/backfill_fetch_response.rb +34 -39
  106. data/lib/orb/models/events/backfill_list_params.rb +12 -15
  107. data/lib/orb/models/events/backfill_list_response.rb +34 -39
  108. data/lib/orb/models/events/backfill_revert_params.rb +3 -8
  109. data/lib/orb/models/events/backfill_revert_response.rb +34 -39
  110. data/lib/orb/models/events/event_volumes.rb +11 -17
  111. data/lib/orb/models/events/volume_list_params.rb +19 -22
  112. data/lib/orb/models/invoice.rb +589 -637
  113. data/lib/orb/models/invoice_create_params.rb +52 -61
  114. data/lib/orb/models/invoice_fetch_params.rb +3 -8
  115. data/lib/orb/models/invoice_fetch_upcoming_params.rb +4 -9
  116. data/lib/orb/models/invoice_fetch_upcoming_response.rb +584 -631
  117. data/lib/orb/models/invoice_issue_params.rb +10 -14
  118. data/lib/orb/models/invoice_level_discount.rb +2 -3
  119. data/lib/orb/models/invoice_line_item_create_params.rb +19 -14
  120. data/lib/orb/models/invoice_line_item_create_response.rb +247 -269
  121. data/lib/orb/models/invoice_list_params.rb +51 -66
  122. data/lib/orb/models/invoice_mark_paid_params.rb +9 -11
  123. data/lib/orb/models/invoice_pay_params.rb +3 -8
  124. data/lib/orb/models/invoice_update_params.rb +9 -9
  125. data/lib/orb/models/invoice_void_params.rb +3 -8
  126. data/lib/orb/models/item.rb +14 -25
  127. data/lib/orb/models/item_create_params.rb +5 -9
  128. data/lib/orb/models/item_fetch_params.rb +3 -8
  129. data/lib/orb/models/item_list_params.rb +12 -15
  130. data/lib/orb/models/item_update_params.rb +10 -22
  131. data/lib/orb/models/metric_create_params.rb +17 -13
  132. data/lib/orb/models/metric_fetch_params.rb +3 -8
  133. data/lib/orb/models/metric_list_params.rb +20 -30
  134. data/lib/orb/models/metric_update_params.rb +9 -9
  135. data/lib/orb/models/pagination_metadata.rb +3 -7
  136. data/lib/orb/models/percentage_discount.rb +15 -14
  137. data/lib/orb/models/plan.rb +250 -279
  138. data/lib/orb/models/plan_create_params.rb +1623 -1984
  139. data/lib/orb/models/plan_fetch_params.rb +3 -8
  140. data/lib/orb/models/plan_list_params.rb +25 -42
  141. data/lib/orb/models/plan_update_params.rb +12 -10
  142. data/lib/orb/models/plans/external_plan_id_fetch_params.rb +3 -8
  143. data/lib/orb/models/plans/external_plan_id_update_params.rb +12 -10
  144. data/lib/orb/models/price.rb +2709 -3820
  145. data/lib/orb/models/price_create_params.rb +203 -244
  146. data/lib/orb/models/price_evaluate_params.rb +21 -30
  147. data/lib/orb/models/price_evaluate_response.rb +2 -6
  148. data/lib/orb/models/price_fetch_params.rb +3 -8
  149. data/lib/orb/models/price_list_params.rb +12 -15
  150. data/lib/orb/models/price_update_params.rb +9 -9
  151. data/lib/orb/models/prices/external_price_id_fetch_params.rb +3 -8
  152. data/lib/orb/models/prices/external_price_id_update_params.rb +9 -9
  153. data/lib/orb/models/subscription.rb +343 -382
  154. data/lib/orb/models/subscription_cancel_params.rb +16 -16
  155. data/lib/orb/models/subscription_cancel_response.rb +339 -377
  156. data/lib/orb/models/subscription_change_apply_params.rb +7 -10
  157. data/lib/orb/models/subscription_change_apply_response.rb +365 -398
  158. data/lib/orb/models/subscription_change_cancel_params.rb +3 -8
  159. data/lib/orb/models/subscription_change_cancel_response.rb +365 -398
  160. data/lib/orb/models/subscription_change_retrieve_params.rb +3 -8
  161. data/lib/orb/models/subscription_change_retrieve_response.rb +366 -398
  162. data/lib/orb/models/subscription_create_params.rb +3771 -4402
  163. data/lib/orb/models/subscription_create_response.rb +339 -377
  164. data/lib/orb/models/subscription_fetch_costs_params.rb +17 -17
  165. data/lib/orb/models/subscription_fetch_costs_response.rb +22 -26
  166. data/lib/orb/models/subscription_fetch_params.rb +3 -8
  167. data/lib/orb/models/subscription_fetch_schedule_params.rb +20 -30
  168. data/lib/orb/models/subscription_fetch_schedule_response.rb +15 -17
  169. data/lib/orb/models/subscription_fetch_usage_params.rb +32 -43
  170. data/lib/orb/models/subscription_list_params.rb +28 -41
  171. data/lib/orb/models/subscription_price_intervals_params.rb +2018 -2472
  172. data/lib/orb/models/subscription_price_intervals_response.rb +342 -377
  173. data/lib/orb/models/subscription_schedule_plan_change_params.rb +3764 -4392
  174. data/lib/orb/models/subscription_schedule_plan_change_response.rb +342 -377
  175. data/lib/orb/models/subscription_trigger_phase_params.rb +12 -10
  176. data/lib/orb/models/subscription_trigger_phase_response.rb +341 -377
  177. data/lib/orb/models/subscription_unschedule_cancellation_params.rb +3 -8
  178. data/lib/orb/models/subscription_unschedule_cancellation_response.rb +342 -377
  179. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rb +5 -9
  180. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +343 -377
  181. data/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rb +3 -8
  182. data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +343 -377
  183. data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +22 -33
  184. data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +342 -377
  185. data/lib/orb/models/subscription_update_params.rb +21 -23
  186. data/lib/orb/models/subscription_update_trial_params.rb +15 -18
  187. data/lib/orb/models/subscription_update_trial_response.rb +341 -377
  188. data/lib/orb/models/subscription_usage.rb +37 -80
  189. data/lib/orb/models/subscriptions.rb +3 -7
  190. data/lib/orb/models/top_level_ping_params.rb +3 -8
  191. data/lib/orb/models/top_level_ping_response.rb +2 -6
  192. data/lib/orb/models/trial_discount.rb +16 -24
  193. data/lib/orb/models/usage_discount.rb +15 -14
  194. data/lib/orb/request_options.rb +3 -4
  195. data/lib/orb/resources/alerts.rb +48 -17
  196. data/lib/orb/resources/coupons/subscriptions.rb +9 -2
  197. data/lib/orb/resources/coupons.rb +25 -7
  198. data/lib/orb/resources/credit_notes.rb +17 -4
  199. data/lib/orb/resources/customers/balance_transactions.rb +18 -3
  200. data/lib/orb/resources/customers/costs.rb +26 -8
  201. data/lib/orb/resources/customers/credits/ledger.rb +108 -28
  202. data/lib/orb/resources/customers/credits/top_ups.rb +67 -20
  203. data/lib/orb/resources/customers/credits.rb +28 -8
  204. data/lib/orb/resources/customers.rb +135 -36
  205. data/lib/orb/resources/dimensional_price_groups.rb +19 -4
  206. data/lib/orb/resources/events/backfills.rb +32 -9
  207. data/lib/orb/resources/events/volume.rb +14 -4
  208. data/lib/orb/resources/events.rb +40 -11
  209. data/lib/orb/resources/invoice_line_items.rb +16 -6
  210. data/lib/orb/resources/invoices.rb +77 -17
  211. data/lib/orb/resources/items.rb +10 -3
  212. data/lib/orb/resources/metrics.rb +33 -8
  213. data/lib/orb/resources/plans/external_plan_id.rb +10 -2
  214. data/lib/orb/resources/plans.rb +47 -11
  215. data/lib/orb/resources/prices/external_price_id.rb +7 -1
  216. data/lib/orb/resources/prices.rb +97 -22
  217. data/lib/orb/resources/subscription_changes.rb +5 -2
  218. data/lib/orb/resources/subscriptions.rb +292 -78
  219. data/lib/orb/version.rb +1 -1
  220. data/lib/orb.rb +2 -10
  221. data/rbi/lib/orb/client.rbi +4 -4
  222. data/rbi/lib/orb/file_part.rbi +34 -0
  223. data/rbi/lib/orb/internal/transport/base_client.rbi +17 -3
  224. data/rbi/lib/orb/internal/type/array_of.rbi +3 -0
  225. data/rbi/lib/orb/internal/type/base_model.rbi +7 -1
  226. data/rbi/lib/orb/internal/type/base_page.rbi +2 -0
  227. data/rbi/lib/orb/internal/type/enum.rbi +3 -6
  228. data/rbi/lib/orb/internal/type/{io_like.rbi → file_input.rbi} +5 -2
  229. data/rbi/lib/orb/internal/type/hash_of.rbi +3 -0
  230. data/rbi/lib/orb/internal/type/union.rbi +3 -0
  231. data/rbi/lib/orb/internal/util.rbi +24 -19
  232. data/rbi/lib/orb/internal.rbi +0 -1
  233. data/rbi/lib/orb/models/alert.rbi +28 -8
  234. data/rbi/lib/orb/models/alert_create_for_customer_params.rbi +16 -6
  235. data/rbi/lib/orb/models/alert_create_for_external_customer_params.rbi +16 -6
  236. data/rbi/lib/orb/models/alert_create_for_subscription_params.rbi +16 -6
  237. data/rbi/lib/orb/models/alert_disable_params.rbi +5 -2
  238. data/rbi/lib/orb/models/alert_enable_params.rbi +5 -2
  239. data/rbi/lib/orb/models/alert_list_params.rbi +6 -0
  240. data/rbi/lib/orb/models/alert_update_params.rbi +11 -4
  241. data/rbi/lib/orb/models/amount_discount.rbi +10 -4
  242. data/rbi/lib/orb/models/billable_metric.rbi +16 -3
  243. data/rbi/lib/orb/models/billing_cycle_relative_date.rbi +1 -1
  244. data/rbi/lib/orb/models/coupon.rbi +10 -3
  245. data/rbi/lib/orb/models/coupon_create_params.rbi +6 -3
  246. data/rbi/lib/orb/models/coupon_list_params.rbi +13 -3
  247. data/rbi/lib/orb/models/coupons/subscription_list_params.rbi +8 -2
  248. data/rbi/lib/orb/models/credit_note.rbi +44 -12
  249. data/rbi/lib/orb/models/credit_note_create_params.rbi +15 -6
  250. data/rbi/lib/orb/models/credit_note_list_params.rbi +3 -0
  251. data/rbi/lib/orb/models/customer.rbi +130 -11
  252. data/rbi/lib/orb/models/customer_create_params.rbi +142 -8
  253. data/rbi/lib/orb/models/customer_list_params.rbi +3 -0
  254. data/rbi/lib/orb/models/customer_update_by_external_id_params.rbi +140 -8
  255. data/rbi/lib/orb/models/customer_update_params.rbi +140 -8
  256. data/rbi/lib/orb/models/customers/balance_transaction_create_params.rbi +8 -4
  257. data/rbi/lib/orb/models/customers/balance_transaction_create_response.rbi +18 -8
  258. data/rbi/lib/orb/models/customers/balance_transaction_list_params.rbi +3 -0
  259. data/rbi/lib/orb/models/customers/balance_transaction_list_response.rbi +18 -8
  260. data/rbi/lib/orb/models/customers/cost_list_by_external_id_params.rbi +9 -5
  261. data/rbi/lib/orb/models/customers/cost_list_by_external_id_response.rbi +21 -4
  262. data/rbi/lib/orb/models/customers/cost_list_params.rbi +9 -5
  263. data/rbi/lib/orb/models/customers/cost_list_response.rbi +21 -4
  264. data/rbi/lib/orb/models/customers/credit_list_by_external_id_params.rbi +13 -3
  265. data/rbi/lib/orb/models/customers/credit_list_by_external_id_response.rbi +1 -2
  266. data/rbi/lib/orb/models/customers/credit_list_params.rbi +13 -3
  267. data/rbi/lib/orb/models/customers/credit_list_response.rbi +1 -2
  268. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +40 -18
  269. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi +35 -56
  270. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_params.rbi +40 -6
  271. data/rbi/lib/orb/models/customers/credits/ledger_create_entry_response.rbi +35 -56
  272. data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rbi +6 -16
  273. data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rbi +35 -56
  274. data/rbi/lib/orb/models/customers/credits/ledger_list_params.rbi +6 -4
  275. data/rbi/lib/orb/models/customers/credits/ledger_list_response.rbi +35 -56
  276. data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rbi +27 -10
  277. data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rbi +25 -10
  278. data/rbi/lib/orb/models/customers/credits/top_up_create_params.rbi +27 -4
  279. data/rbi/lib/orb/models/customers/credits/top_up_create_response.rbi +25 -10
  280. data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rbi +8 -2
  281. data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rbi +25 -10
  282. data/rbi/lib/orb/models/customers/credits/top_up_list_params.rbi +8 -2
  283. data/rbi/lib/orb/models/customers/credits/top_up_list_response.rbi +25 -4
  284. data/rbi/lib/orb/models/dimensional_price_group.rbi +11 -3
  285. data/rbi/lib/orb/models/dimensional_price_group_create_params.rbi +4 -0
  286. data/rbi/lib/orb/models/dimensional_price_group_list_params.rbi +8 -2
  287. data/rbi/lib/orb/models/evaluate_price_group.rbi +8 -2
  288. data/rbi/lib/orb/models/event_deprecate_response.rbi +4 -2
  289. data/rbi/lib/orb/models/event_ingest_params.rbi +22 -5
  290. data/rbi/lib/orb/models/event_ingest_response.rbi +15 -4
  291. data/rbi/lib/orb/models/event_search_params.rbi +14 -2
  292. data/rbi/lib/orb/models/event_search_response.rbi +14 -3
  293. data/rbi/lib/orb/models/event_update_params.rbi +10 -3
  294. data/rbi/lib/orb/models/event_update_response.rbi +4 -2
  295. data/rbi/lib/orb/models/events/backfill_close_response.rbi +14 -2
  296. data/rbi/lib/orb/models/events/backfill_create_params.rbi +18 -0
  297. data/rbi/lib/orb/models/events/backfill_create_response.rbi +14 -2
  298. data/rbi/lib/orb/models/events/backfill_fetch_response.rbi +14 -2
  299. data/rbi/lib/orb/models/events/backfill_list_params.rbi +8 -2
  300. data/rbi/lib/orb/models/events/backfill_list_response.rbi +14 -2
  301. data/rbi/lib/orb/models/events/backfill_revert_response.rbi +14 -2
  302. data/rbi/lib/orb/models/events/event_volumes.rbi +6 -2
  303. data/rbi/lib/orb/models/events/volume_list_params.rbi +18 -2
  304. data/rbi/lib/orb/models/invoice.rbi +375 -46
  305. data/rbi/lib/orb/models/invoice_create_params.rbi +38 -6
  306. data/rbi/lib/orb/models/invoice_fetch_upcoming_response.rbi +375 -66
  307. data/rbi/lib/orb/models/invoice_issue_params.rbi +9 -2
  308. data/rbi/lib/orb/models/invoice_line_item_create_params.rbi +16 -2
  309. data/rbi/lib/orb/models/invoice_line_item_create_response.rbi +141 -20
  310. data/rbi/lib/orb/models/invoice_list_params.rbi +9 -2
  311. data/rbi/lib/orb/models/invoice_mark_paid_params.rbi +9 -2
  312. data/rbi/lib/orb/models/invoice_update_params.rbi +7 -2
  313. data/rbi/lib/orb/models/item.rbi +1 -2
  314. data/rbi/lib/orb/models/item_create_params.rbi +5 -2
  315. data/rbi/lib/orb/models/item_list_params.rbi +8 -2
  316. data/rbi/lib/orb/models/item_update_params.rbi +1 -8
  317. data/rbi/lib/orb/models/metric_create_params.rbi +15 -2
  318. data/rbi/lib/orb/models/metric_list_params.rbi +3 -0
  319. data/rbi/lib/orb/models/metric_update_params.rbi +7 -2
  320. data/rbi/lib/orb/models/percentage_discount.rbi +11 -4
  321. data/rbi/lib/orb/models/plan.rbi +102 -15
  322. data/rbi/lib/orb/models/plan_create_params.rbi +997 -679
  323. data/rbi/lib/orb/models/plan_list_params.rbi +5 -1
  324. data/rbi/lib/orb/models/plan_update_params.rbi +11 -2
  325. data/rbi/lib/orb/models/plans/external_plan_id_update_params.rbi +11 -2
  326. data/rbi/lib/orb/models/price.rbi +717 -688
  327. data/rbi/lib/orb/models/price_create_params.rbi +137 -53
  328. data/rbi/lib/orb/models/price_evaluate_params.rbi +10 -0
  329. data/rbi/lib/orb/models/price_list_params.rbi +8 -2
  330. data/rbi/lib/orb/models/price_update_params.rbi +7 -2
  331. data/rbi/lib/orb/models/prices/external_price_id_update_params.rbi +7 -2
  332. data/rbi/lib/orb/models/subscription.rbi +174 -11
  333. data/rbi/lib/orb/models/subscription_cancel_params.rbi +8 -5
  334. data/rbi/lib/orb/models/subscription_cancel_response.rbi +187 -14
  335. data/rbi/lib/orb/models/subscription_change_apply_params.rbi +7 -2
  336. data/rbi/lib/orb/models/subscription_change_apply_response.rbi +199 -18
  337. data/rbi/lib/orb/models/subscription_change_cancel_response.rbi +199 -18
  338. data/rbi/lib/orb/models/subscription_change_retrieve_response.rbi +199 -18
  339. data/rbi/lib/orb/models/subscription_create_params.rbi +2282 -1536
  340. data/rbi/lib/orb/models/subscription_create_response.rbi +187 -14
  341. data/rbi/lib/orb/models/subscription_fetch_costs_params.rbi +9 -5
  342. data/rbi/lib/orb/models/subscription_fetch_costs_response.rbi +21 -4
  343. data/rbi/lib/orb/models/subscription_fetch_schedule_params.rbi +3 -0
  344. data/rbi/lib/orb/models/subscription_fetch_schedule_response.rbi +8 -2
  345. data/rbi/lib/orb/models/subscription_fetch_usage_params.rbi +13 -4
  346. data/rbi/lib/orb/models/subscription_list_params.rbi +4 -2
  347. data/rbi/lib/orb/models/subscription_price_intervals_params.rbi +1228 -861
  348. data/rbi/lib/orb/models/subscription_price_intervals_response.rbi +187 -14
  349. data/rbi/lib/orb/models/subscription_schedule_plan_change_params.rbi +2288 -1544
  350. data/rbi/lib/orb/models/subscription_schedule_plan_change_response.rbi +187 -14
  351. data/rbi/lib/orb/models/subscription_trigger_phase_params.rbi +10 -2
  352. data/rbi/lib/orb/models/subscription_trigger_phase_response.rbi +187 -14
  353. data/rbi/lib/orb/models/subscription_unschedule_cancellation_response.rbi +187 -14
  354. data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +5 -2
  355. data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +187 -20
  356. data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rbi +187 -14
  357. data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_params.rbi +11 -2
  358. data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_response.rbi +187 -14
  359. data/rbi/lib/orb/models/subscription_update_params.rbi +15 -0
  360. data/rbi/lib/orb/models/subscription_update_trial_params.rbi +11 -5
  361. data/rbi/lib/orb/models/subscription_update_trial_response.rbi +187 -14
  362. data/rbi/lib/orb/models/subscription_usage.rbi +2 -16
  363. data/rbi/lib/orb/models/trial_discount.rbi +5 -1
  364. data/rbi/lib/orb/models/usage_discount.rbi +11 -3
  365. data/sig/orb/file_part.rbs +21 -0
  366. data/sig/orb/internal/transport/base_client.rbs +9 -3
  367. data/sig/orb/internal/type/array_of.rbs +2 -0
  368. data/sig/orb/internal/type/base_model.rbs +4 -0
  369. data/sig/orb/internal/type/enum.rbs +2 -2
  370. data/sig/orb/internal/type/{io_like.rbs → file_input.rbs} +1 -1
  371. data/sig/orb/internal/type/hash_of.rbs +2 -0
  372. data/sig/orb/internal/type/union.rbs +2 -0
  373. data/sig/orb/internal/util.rbs +14 -12
  374. metadata +8 -5
@@ -47,8 +47,17 @@ module Orb
47
47
  )
48
48
  .returns(T.attached_class)
49
49
  end
50
- def self.new(id:, expiration_time:, status:, subscription:, applied_at: nil, cancelled_at: nil); end
51
-
50
+ def self.new(
51
+ id:,
52
+ # Subscription change will be cancelled at this time and can no longer be applied.
53
+ expiration_time:,
54
+ status:,
55
+ subscription:,
56
+ # When this change was applied.
57
+ applied_at: nil,
58
+ # When this change was cancelled.
59
+ cancelled_at: nil
60
+ ); end
52
61
  sig do
53
62
  override
54
63
  .returns(
@@ -68,8 +77,7 @@ module Orb
68
77
  extend Orb::Internal::Type::Enum
69
78
 
70
79
  TaggedSymbol = T.type_alias { T.all(Symbol, Orb::Models::SubscriptionChangeRetrieveResponse::Status) }
71
- OrSymbol =
72
- T.type_alias { T.any(Symbol, String, Orb::Models::SubscriptionChangeRetrieveResponse::Status::TaggedSymbol) }
80
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
73
81
 
74
82
  PENDING = T.let(:pending, Orb::Models::SubscriptionChangeRetrieveResponse::Status::TaggedSymbol)
75
83
  APPLIED = T.let(:applied, Orb::Models::SubscriptionChangeRetrieveResponse::Status::TaggedSymbol)
@@ -382,31 +390,90 @@ module Orb
382
390
  end
383
391
  def self.new(
384
392
  id:,
393
+ # The current plan phase that is active, only if the subscription's plan has
394
+ # phases.
385
395
  active_plan_phase_order:,
396
+ # The adjustment intervals for this subscription sorted by the start_date of the
397
+ # adjustment interval.
386
398
  adjustment_intervals:,
399
+ # Determines whether issued invoices for this subscription will automatically be
400
+ # charged with the saved payment method on the due date. This property defaults to
401
+ # the plan's behavior. If null, defaults to the customer's setting.
387
402
  auto_collection:,
388
403
  billing_cycle_anchor_configuration:,
404
+ # The day of the month on which the billing cycle is anchored. If the maximum
405
+ # number of days in a month is greater than this value, the last day of the month
406
+ # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
407
+ # period begins on the 30th.
389
408
  billing_cycle_day:,
390
409
  created_at:,
410
+ # The end of the current billing period. This is an exclusive timestamp, such that
411
+ # the instant returned is not part of the billing period. Set to null for
412
+ # subscriptions that are not currently active.
391
413
  current_billing_period_end_date:,
414
+ # The start date of the current billing period. This is an inclusive timestamp;
415
+ # the instant returned is exactly the beginning of the billing period. Set to null
416
+ # if the subscription is not currently active.
392
417
  current_billing_period_start_date:,
418
+ # A customer is a buyer of your products, and the other party to the billing
419
+ # relationship.
420
+ #
421
+ # In Orb, customers are assigned system generated identifiers automatically, but
422
+ # it's often desirable to have these match existing identifiers in your system. To
423
+ # avoid having to denormalize Orb ID information, you can pass in an
424
+ # `external_customer_id` with your own identifier. See
425
+ # [Customer ID Aliases](/events-and-metrics/customer-aliases) for further
426
+ # information about how these aliases work in Orb.
427
+ #
428
+ # In addition to having an identifier in your system, a customer may exist in a
429
+ # payment provider solution like Stripe. Use the `payment_provider_id` and the
430
+ # `payment_provider` enum field to express this mapping.
431
+ #
432
+ # A customer also has a timezone (from the standard
433
+ # [IANA timezone database](https://www.iana.org/time-zones)), which defaults to
434
+ # your account's timezone. See [Timezone localization](/essentials/timezones) for
435
+ # information on what this timezone parameter influences within Orb.
393
436
  customer:,
437
+ # Determines the default memo on this subscriptions' invoices. Note that if this
438
+ # is not provided, it is determined by the plan configuration.
394
439
  default_invoice_memo:,
440
+ # The discount intervals for this subscription sorted by the start_date.
395
441
  discount_intervals:,
442
+ # The date Orb stops billing for this subscription.
396
443
  end_date:,
397
444
  fixed_fee_quantity_schedule:,
398
445
  invoicing_threshold:,
446
+ # The maximum intervals for this subscription sorted by the start_date.
399
447
  maximum_intervals:,
448
+ # User specified key-value pairs for the resource. If not present, this defaults
449
+ # to an empty dictionary. Individual keys can be removed by setting the value to
450
+ # `null`, and the entire metadata mapping can be cleared by setting `metadata` to
451
+ # `null`.
400
452
  metadata:,
453
+ # The minimum intervals for this subscription sorted by the start_date.
401
454
  minimum_intervals:,
455
+ # Determines the difference between the invoice issue date for subscription
456
+ # invoices as the date that they are due. A value of `0` here represents that the
457
+ # invoice is due on issue, whereas a value of `30` represents that the customer
458
+ # has a month to pay the invoice.
402
459
  net_terms:,
460
+ # A pending subscription change if one exists on this subscription.
403
461
  pending_subscription_change:,
462
+ # The [Plan](/core-concepts#plan-and-price) resource represents a plan that can be
463
+ # subscribed to by a customer. Plans define the billing behavior of the
464
+ # subscription. You can see more about how to configure prices in the
465
+ # [Price resource](/reference/price).
404
466
  plan:,
467
+ # The price intervals for this subscription.
405
468
  price_intervals:,
406
469
  redeemed_coupon:,
470
+ # The date Orb starts billing for this subscription.
407
471
  start_date:,
408
472
  status:,
409
473
  trial_info:,
474
+ # The resources that were changed as part of this operation. Only present when
475
+ # fetched through the subscription changes API or if the
476
+ # `include_changed_resources` parameter was passed in the request.
410
477
  changed_resources: nil
411
478
  ); end
412
479
  sig do
@@ -497,8 +564,16 @@ module Orb
497
564
  )
498
565
  .returns(T.attached_class)
499
566
  end
500
- def self.new(id:, adjustment:, applies_to_price_interval_ids:, end_date:, start_date:); end
501
-
567
+ def self.new(
568
+ id:,
569
+ adjustment:,
570
+ # The price interval IDs that this adjustment applies to.
571
+ applies_to_price_interval_ids:,
572
+ # The end date of the adjustment interval.
573
+ end_date:,
574
+ # The start date of the adjustment interval.
575
+ start_date:
576
+ ); end
502
577
  sig do
503
578
  override
504
579
  .returns(
@@ -565,10 +640,17 @@ module Orb
565
640
  end
566
641
  def self.new(
567
642
  id:,
643
+ # The price IDs that this adjustment applies to.
568
644
  applies_to_price_ids:,
645
+ # True for adjustments that apply to an entire invocice, false for adjustments
646
+ # that apply to only one price.
569
647
  is_invoice_level:,
648
+ # The plan phase in which this adjustment is active.
570
649
  plan_phase_order:,
650
+ # The reason for the adjustment.
571
651
  reason:,
652
+ # The number of usage units by which to discount the price this adjustment applies
653
+ # to in a given billing period.
572
654
  usage_discount:,
573
655
  adjustment_type: :usage_discount
574
656
  ); end
@@ -632,10 +714,17 @@ module Orb
632
714
  end
633
715
  def self.new(
634
716
  id:,
717
+ # The amount by which to discount the prices this adjustment applies to in a given
718
+ # billing period.
635
719
  amount_discount:,
720
+ # The price IDs that this adjustment applies to.
636
721
  applies_to_price_ids:,
722
+ # True for adjustments that apply to an entire invocice, false for adjustments
723
+ # that apply to only one price.
637
724
  is_invoice_level:,
725
+ # The plan phase in which this adjustment is active.
638
726
  plan_phase_order:,
727
+ # The reason for the adjustment.
639
728
  reason:,
640
729
  adjustment_type: :amount_discount
641
730
  ); end
@@ -699,10 +788,17 @@ module Orb
699
788
  end
700
789
  def self.new(
701
790
  id:,
791
+ # The price IDs that this adjustment applies to.
702
792
  applies_to_price_ids:,
793
+ # True for adjustments that apply to an entire invocice, false for adjustments
794
+ # that apply to only one price.
703
795
  is_invoice_level:,
796
+ # The percentage (as a value between 0 and 1) by which to discount the price
797
+ # intervals this adjustment applies to in a given billing period.
704
798
  percentage_discount:,
799
+ # The plan phase in which this adjustment is active.
705
800
  plan_phase_order:,
801
+ # The reason for the adjustment.
706
802
  reason:,
707
803
  adjustment_type: :percentage_discount
708
804
  ); end
@@ -771,11 +867,19 @@ module Orb
771
867
  end
772
868
  def self.new(
773
869
  id:,
870
+ # The price IDs that this adjustment applies to.
774
871
  applies_to_price_ids:,
872
+ # True for adjustments that apply to an entire invocice, false for adjustments
873
+ # that apply to only one price.
775
874
  is_invoice_level:,
875
+ # The item ID that revenue from this minimum will be attributed to.
776
876
  item_id:,
877
+ # The minimum amount to charge in a given billing period for the prices this
878
+ # adjustment applies to.
777
879
  minimum_amount:,
880
+ # The plan phase in which this adjustment is active.
778
881
  plan_phase_order:,
882
+ # The reason for the adjustment.
779
883
  reason:,
780
884
  adjustment_type: :minimum
781
885
  ); end
@@ -840,10 +944,17 @@ module Orb
840
944
  end
841
945
  def self.new(
842
946
  id:,
947
+ # The price IDs that this adjustment applies to.
843
948
  applies_to_price_ids:,
949
+ # True for adjustments that apply to an entire invocice, false for adjustments
950
+ # that apply to only one price.
844
951
  is_invoice_level:,
952
+ # The maximum amount to charge in a given billing period for the prices this
953
+ # adjustment applies to.
845
954
  maximum_amount:,
955
+ # The plan phase in which this adjustment is active.
846
956
  plan_phase_order:,
957
+ # The reason for the adjustment.
847
958
  reason:,
848
959
  adjustment_type: :maximum
849
960
  ); end
@@ -900,8 +1011,20 @@ module Orb
900
1011
  year: T.nilable(Integer)
901
1012
  ).returns(T.attached_class)
902
1013
  end
903
- def self.new(day:, month: nil, year: nil); end
904
-
1014
+ def self.new(
1015
+ # The day of the month on which the billing cycle is anchored. If the maximum
1016
+ # number of days in a month is greater than this value, the last day of the month
1017
+ # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
1018
+ # period begins on the 30th.
1019
+ day:,
1020
+ # The month on which the billing cycle is anchored (e.g. a quarterly price
1021
+ # anchored in February would have cycles starting February, May, August, and
1022
+ # November).
1023
+ month: nil,
1024
+ # The year on which the billing cycle is anchored (e.g. a 2 year billing cycle
1025
+ # anchored on 2021 would have cycles starting on 2021, 2023, 2025, etc.).
1026
+ year: nil
1027
+ ); end
905
1028
  sig { override.returns({day: Integer, month: T.nilable(Integer), year: T.nilable(Integer)}) }
906
1029
  def to_hash; end
907
1030
  end
@@ -945,10 +1068,15 @@ module Orb
945
1068
  .returns(T.attached_class)
946
1069
  end
947
1070
  def self.new(
1071
+ # Only available if discount_type is `amount`.
948
1072
  amount_discount:,
1073
+ # The price ids that this discount interval applies to.
949
1074
  applies_to_price_ids:,
1075
+ # The price interval ids that this discount interval applies to.
950
1076
  applies_to_price_interval_ids:,
1077
+ # The end date of the discount interval.
951
1078
  end_date:,
1079
+ # The start date of the discount interval.
952
1080
  start_date:,
953
1081
  discount_type: :amount
954
1082
  ); end
@@ -1005,10 +1133,16 @@ module Orb
1005
1133
  .returns(T.attached_class)
1006
1134
  end
1007
1135
  def self.new(
1136
+ # The price ids that this discount interval applies to.
1008
1137
  applies_to_price_ids:,
1138
+ # The price interval ids that this discount interval applies to.
1009
1139
  applies_to_price_interval_ids:,
1140
+ # The end date of the discount interval.
1010
1141
  end_date:,
1142
+ # Only available if discount_type is `percentage`.This is a number between 0
1143
+ # and 1.
1011
1144
  percentage_discount:,
1145
+ # The start date of the discount interval.
1012
1146
  start_date:,
1013
1147
  discount_type: :percentage
1014
1148
  ); end
@@ -1065,10 +1199,16 @@ module Orb
1065
1199
  .returns(T.attached_class)
1066
1200
  end
1067
1201
  def self.new(
1202
+ # The price ids that this discount interval applies to.
1068
1203
  applies_to_price_ids:,
1204
+ # The price interval ids that this discount interval applies to.
1069
1205
  applies_to_price_interval_ids:,
1206
+ # The end date of the discount interval.
1070
1207
  end_date:,
1208
+ # The start date of the discount interval.
1071
1209
  start_date:,
1210
+ # Only available if discount_type is `usage`. Number of usage units that this
1211
+ # discount is for
1072
1212
  usage_discount:,
1073
1213
  discount_type: :usage
1074
1214
  ); end
@@ -1155,14 +1295,18 @@ module Orb
1155
1295
  .returns(T.attached_class)
1156
1296
  end
1157
1297
  def self.new(
1298
+ # The price ids that this maximum interval applies to.
1158
1299
  applies_to_price_ids:,
1300
+ # The price interval ids that this maximum interval applies to.
1159
1301
  applies_to_price_interval_ids:,
1302
+ # The end date of the maximum interval.
1160
1303
  end_date:,
1304
+ # The maximum amount to charge in a given billing period for the price intervals
1305
+ # this transform applies to.
1161
1306
  maximum_amount:,
1307
+ # The start date of the maximum interval.
1162
1308
  start_date:
1163
- )
1164
- end
1165
-
1309
+ ); end
1166
1310
  sig do
1167
1311
  override
1168
1312
  .returns(
@@ -1211,14 +1355,18 @@ module Orb
1211
1355
  .returns(T.attached_class)
1212
1356
  end
1213
1357
  def self.new(
1358
+ # The price ids that this minimum interval applies to.
1214
1359
  applies_to_price_ids:,
1360
+ # The price interval ids that this minimum interval applies to.
1215
1361
  applies_to_price_interval_ids:,
1362
+ # The end date of the minimum interval.
1216
1363
  end_date:,
1364
+ # The minimum amount to charge in a given billing period for the price intervals
1365
+ # this minimum applies to.
1217
1366
  minimum_amount:,
1367
+ # The start date of the minimum interval.
1218
1368
  start_date:
1219
- )
1220
- end
1221
-
1369
+ ); end
1222
1370
  sig do
1223
1371
  override
1224
1372
  .returns(
@@ -1399,14 +1547,40 @@ module Orb
1399
1547
  end
1400
1548
  def self.new(
1401
1549
  id:,
1550
+ # The day of the month that Orb bills for this price
1402
1551
  billing_cycle_day:,
1552
+ # The end of the current billing period. This is an exclusive timestamp, such that
1553
+ # the instant returned is exactly the end of the billing period. Set to null if
1554
+ # this price interval is not currently active.
1403
1555
  current_billing_period_end_date:,
1556
+ # The start date of the current billing period. This is an inclusive timestamp;
1557
+ # the instant returned is exactly the beginning of the billing period. Set to null
1558
+ # if this price interval is not currently active.
1404
1559
  current_billing_period_start_date:,
1560
+ # The end date of the price interval. This is the date that Orb stops billing for
1561
+ # this price.
1405
1562
  end_date:,
1563
+ # An additional filter to apply to usage queries.
1406
1564
  filter:,
1565
+ # The fixed fee quantity transitions for this price interval. This is only
1566
+ # relevant for fixed fees.
1407
1567
  fixed_fee_quantity_transitions:,
1568
+ # The Price resource represents a price that can be billed on a subscription,
1569
+ # resulting in a charge on an invoice in the form of an invoice line item. Prices
1570
+ # take a quantity and determine an amount to bill.
1571
+ #
1572
+ # Orb supports a few different pricing models out of the box. Each of these models
1573
+ # is serialized differently in a given Price object. The model_type field
1574
+ # determines the key for the configuration object that is present.
1575
+ #
1576
+ # For more on the types of prices, see
1577
+ # [the core concepts documentation](/core-concepts#plan-and-price)
1408
1578
  price:,
1579
+ # The start date of the price interval. This is the date that Orb starts billing
1580
+ # for this price.
1409
1581
  start_date:,
1582
+ # A list of customer IDs whose usage events will be aggregated and billed under
1583
+ # this price interval.
1410
1584
  usage_customer_ids:
1411
1585
  ); end
1412
1586
  sig do
@@ -1503,8 +1677,7 @@ module Orb
1503
1677
 
1504
1678
  TaggedSymbol =
1505
1679
  T.type_alias { T.all(Symbol, Orb::Models::SubscriptionChangeRetrieveResponse::Subscription::Status) }
1506
- OrSymbol =
1507
- T.type_alias { T.any(Symbol, String, Orb::Models::SubscriptionChangeRetrieveResponse::Subscription::Status::TaggedSymbol) }
1680
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1508
1681
 
1509
1682
  ACTIVE =
1510
1683
  T.let(:active, Orb::Models::SubscriptionChangeRetrieveResponse::Subscription::Status::TaggedSymbol)
@@ -1560,8 +1733,16 @@ module Orb
1560
1733
  )
1561
1734
  .returns(T.attached_class)
1562
1735
  end
1563
- def self.new(created_credit_notes:, created_invoices:, voided_credit_notes:, voided_invoices:); end
1564
-
1736
+ def self.new(
1737
+ # The credit notes that were created as part of this operation.
1738
+ created_credit_notes:,
1739
+ # The invoices that were created as part of this operation.
1740
+ created_invoices:,
1741
+ # The credit notes that were voided as part of this operation.
1742
+ voided_credit_notes:,
1743
+ # The invoices that were voided as part of this operation.
1744
+ voided_invoices:
1745
+ ); end
1565
1746
  sig do
1566
1747
  override
1567
1748
  .returns(