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::SubscriptionChangeCancelResponse::Status) }
71
- OrSymbol =
72
- T.type_alias { T.any(Symbol, String, Orb::Models::SubscriptionChangeCancelResponse::Status::TaggedSymbol) }
80
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
73
81
 
74
82
  PENDING = T.let(:pending, Orb::Models::SubscriptionChangeCancelResponse::Status::TaggedSymbol)
75
83
  APPLIED = T.let(:applied, Orb::Models::SubscriptionChangeCancelResponse::Status::TaggedSymbol)
@@ -367,31 +375,90 @@ module Orb
367
375
  end
368
376
  def self.new(
369
377
  id:,
378
+ # The current plan phase that is active, only if the subscription's plan has
379
+ # phases.
370
380
  active_plan_phase_order:,
381
+ # The adjustment intervals for this subscription sorted by the start_date of the
382
+ # adjustment interval.
371
383
  adjustment_intervals:,
384
+ # Determines whether issued invoices for this subscription will automatically be
385
+ # charged with the saved payment method on the due date. This property defaults to
386
+ # the plan's behavior. If null, defaults to the customer's setting.
372
387
  auto_collection:,
373
388
  billing_cycle_anchor_configuration:,
389
+ # The day of the month on which the billing cycle is anchored. If the maximum
390
+ # number of days in a month is greater than this value, the last day of the month
391
+ # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
392
+ # period begins on the 30th.
374
393
  billing_cycle_day:,
375
394
  created_at:,
395
+ # The end of the current billing period. This is an exclusive timestamp, such that
396
+ # the instant returned is not part of the billing period. Set to null for
397
+ # subscriptions that are not currently active.
376
398
  current_billing_period_end_date:,
399
+ # The start date of the current billing period. This is an inclusive timestamp;
400
+ # the instant returned is exactly the beginning of the billing period. Set to null
401
+ # if the subscription is not currently active.
377
402
  current_billing_period_start_date:,
403
+ # A customer is a buyer of your products, and the other party to the billing
404
+ # relationship.
405
+ #
406
+ # In Orb, customers are assigned system generated identifiers automatically, but
407
+ # it's often desirable to have these match existing identifiers in your system. To
408
+ # avoid having to denormalize Orb ID information, you can pass in an
409
+ # `external_customer_id` with your own identifier. See
410
+ # [Customer ID Aliases](/events-and-metrics/customer-aliases) for further
411
+ # information about how these aliases work in Orb.
412
+ #
413
+ # In addition to having an identifier in your system, a customer may exist in a
414
+ # payment provider solution like Stripe. Use the `payment_provider_id` and the
415
+ # `payment_provider` enum field to express this mapping.
416
+ #
417
+ # A customer also has a timezone (from the standard
418
+ # [IANA timezone database](https://www.iana.org/time-zones)), which defaults to
419
+ # your account's timezone. See [Timezone localization](/essentials/timezones) for
420
+ # information on what this timezone parameter influences within Orb.
378
421
  customer:,
422
+ # Determines the default memo on this subscriptions' invoices. Note that if this
423
+ # is not provided, it is determined by the plan configuration.
379
424
  default_invoice_memo:,
425
+ # The discount intervals for this subscription sorted by the start_date.
380
426
  discount_intervals:,
427
+ # The date Orb stops billing for this subscription.
381
428
  end_date:,
382
429
  fixed_fee_quantity_schedule:,
383
430
  invoicing_threshold:,
431
+ # The maximum intervals for this subscription sorted by the start_date.
384
432
  maximum_intervals:,
433
+ # User specified key-value pairs for the resource. If not present, this defaults
434
+ # to an empty dictionary. Individual keys can be removed by setting the value to
435
+ # `null`, and the entire metadata mapping can be cleared by setting `metadata` to
436
+ # `null`.
385
437
  metadata:,
438
+ # The minimum intervals for this subscription sorted by the start_date.
386
439
  minimum_intervals:,
440
+ # Determines the difference between the invoice issue date for subscription
441
+ # invoices as the date that they are due. A value of `0` here represents that the
442
+ # invoice is due on issue, whereas a value of `30` represents that the customer
443
+ # has a month to pay the invoice.
387
444
  net_terms:,
445
+ # A pending subscription change if one exists on this subscription.
388
446
  pending_subscription_change:,
447
+ # The [Plan](/core-concepts#plan-and-price) resource represents a plan that can be
448
+ # subscribed to by a customer. Plans define the billing behavior of the
449
+ # subscription. You can see more about how to configure prices in the
450
+ # [Price resource](/reference/price).
389
451
  plan:,
452
+ # The price intervals for this subscription.
390
453
  price_intervals:,
391
454
  redeemed_coupon:,
455
+ # The date Orb starts billing for this subscription.
392
456
  start_date:,
393
457
  status:,
394
458
  trial_info:,
459
+ # The resources that were changed as part of this operation. Only present when
460
+ # fetched through the subscription changes API or if the
461
+ # `include_changed_resources` parameter was passed in the request.
395
462
  changed_resources: nil
396
463
  ); end
397
464
  sig do
@@ -482,8 +549,16 @@ module Orb
482
549
  )
483
550
  .returns(T.attached_class)
484
551
  end
485
- def self.new(id:, adjustment:, applies_to_price_interval_ids:, end_date:, start_date:); end
486
-
552
+ def self.new(
553
+ id:,
554
+ adjustment:,
555
+ # The price interval IDs that this adjustment applies to.
556
+ applies_to_price_interval_ids:,
557
+ # The end date of the adjustment interval.
558
+ end_date:,
559
+ # The start date of the adjustment interval.
560
+ start_date:
561
+ ); end
487
562
  sig do
488
563
  override
489
564
  .returns(
@@ -550,10 +625,17 @@ module Orb
550
625
  end
551
626
  def self.new(
552
627
  id:,
628
+ # The price IDs that this adjustment applies to.
553
629
  applies_to_price_ids:,
630
+ # True for adjustments that apply to an entire invocice, false for adjustments
631
+ # that apply to only one price.
554
632
  is_invoice_level:,
633
+ # The plan phase in which this adjustment is active.
555
634
  plan_phase_order:,
635
+ # The reason for the adjustment.
556
636
  reason:,
637
+ # The number of usage units by which to discount the price this adjustment applies
638
+ # to in a given billing period.
557
639
  usage_discount:,
558
640
  adjustment_type: :usage_discount
559
641
  ); end
@@ -617,10 +699,17 @@ module Orb
617
699
  end
618
700
  def self.new(
619
701
  id:,
702
+ # The amount by which to discount the prices this adjustment applies to in a given
703
+ # billing period.
620
704
  amount_discount:,
705
+ # The price IDs that this adjustment applies to.
621
706
  applies_to_price_ids:,
707
+ # True for adjustments that apply to an entire invocice, false for adjustments
708
+ # that apply to only one price.
622
709
  is_invoice_level:,
710
+ # The plan phase in which this adjustment is active.
623
711
  plan_phase_order:,
712
+ # The reason for the adjustment.
624
713
  reason:,
625
714
  adjustment_type: :amount_discount
626
715
  ); end
@@ -684,10 +773,17 @@ module Orb
684
773
  end
685
774
  def self.new(
686
775
  id:,
776
+ # The price IDs that this adjustment applies to.
687
777
  applies_to_price_ids:,
778
+ # True for adjustments that apply to an entire invocice, false for adjustments
779
+ # that apply to only one price.
688
780
  is_invoice_level:,
781
+ # The percentage (as a value between 0 and 1) by which to discount the price
782
+ # intervals this adjustment applies to in a given billing period.
689
783
  percentage_discount:,
784
+ # The plan phase in which this adjustment is active.
690
785
  plan_phase_order:,
786
+ # The reason for the adjustment.
691
787
  reason:,
692
788
  adjustment_type: :percentage_discount
693
789
  ); end
@@ -756,11 +852,19 @@ module Orb
756
852
  end
757
853
  def self.new(
758
854
  id:,
855
+ # The price IDs that this adjustment applies to.
759
856
  applies_to_price_ids:,
857
+ # True for adjustments that apply to an entire invocice, false for adjustments
858
+ # that apply to only one price.
760
859
  is_invoice_level:,
860
+ # The item ID that revenue from this minimum will be attributed to.
761
861
  item_id:,
862
+ # The minimum amount to charge in a given billing period for the prices this
863
+ # adjustment applies to.
762
864
  minimum_amount:,
865
+ # The plan phase in which this adjustment is active.
763
866
  plan_phase_order:,
867
+ # The reason for the adjustment.
764
868
  reason:,
765
869
  adjustment_type: :minimum
766
870
  ); end
@@ -825,10 +929,17 @@ module Orb
825
929
  end
826
930
  def self.new(
827
931
  id:,
932
+ # The price IDs that this adjustment applies to.
828
933
  applies_to_price_ids:,
934
+ # True for adjustments that apply to an entire invocice, false for adjustments
935
+ # that apply to only one price.
829
936
  is_invoice_level:,
937
+ # The maximum amount to charge in a given billing period for the prices this
938
+ # adjustment applies to.
830
939
  maximum_amount:,
940
+ # The plan phase in which this adjustment is active.
831
941
  plan_phase_order:,
942
+ # The reason for the adjustment.
832
943
  reason:,
833
944
  adjustment_type: :maximum
834
945
  ); end
@@ -885,8 +996,20 @@ module Orb
885
996
  year: T.nilable(Integer)
886
997
  ).returns(T.attached_class)
887
998
  end
888
- def self.new(day:, month: nil, year: nil); end
889
-
999
+ def self.new(
1000
+ # The day of the month on which the billing cycle is anchored. If the maximum
1001
+ # number of days in a month is greater than this value, the last day of the month
1002
+ # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
1003
+ # period begins on the 30th.
1004
+ day:,
1005
+ # The month on which the billing cycle is anchored (e.g. a quarterly price
1006
+ # anchored in February would have cycles starting February, May, August, and
1007
+ # November).
1008
+ month: nil,
1009
+ # The year on which the billing cycle is anchored (e.g. a 2 year billing cycle
1010
+ # anchored on 2021 would have cycles starting on 2021, 2023, 2025, etc.).
1011
+ year: nil
1012
+ ); end
890
1013
  sig { override.returns({day: Integer, month: T.nilable(Integer), year: T.nilable(Integer)}) }
891
1014
  def to_hash; end
892
1015
  end
@@ -930,10 +1053,15 @@ module Orb
930
1053
  .returns(T.attached_class)
931
1054
  end
932
1055
  def self.new(
1056
+ # Only available if discount_type is `amount`.
933
1057
  amount_discount:,
1058
+ # The price ids that this discount interval applies to.
934
1059
  applies_to_price_ids:,
1060
+ # The price interval ids that this discount interval applies to.
935
1061
  applies_to_price_interval_ids:,
1062
+ # The end date of the discount interval.
936
1063
  end_date:,
1064
+ # The start date of the discount interval.
937
1065
  start_date:,
938
1066
  discount_type: :amount
939
1067
  ); end
@@ -990,10 +1118,16 @@ module Orb
990
1118
  .returns(T.attached_class)
991
1119
  end
992
1120
  def self.new(
1121
+ # The price ids that this discount interval applies to.
993
1122
  applies_to_price_ids:,
1123
+ # The price interval ids that this discount interval applies to.
994
1124
  applies_to_price_interval_ids:,
1125
+ # The end date of the discount interval.
995
1126
  end_date:,
1127
+ # Only available if discount_type is `percentage`.This is a number between 0
1128
+ # and 1.
996
1129
  percentage_discount:,
1130
+ # The start date of the discount interval.
997
1131
  start_date:,
998
1132
  discount_type: :percentage
999
1133
  ); end
@@ -1050,10 +1184,16 @@ module Orb
1050
1184
  .returns(T.attached_class)
1051
1185
  end
1052
1186
  def self.new(
1187
+ # The price ids that this discount interval applies to.
1053
1188
  applies_to_price_ids:,
1189
+ # The price interval ids that this discount interval applies to.
1054
1190
  applies_to_price_interval_ids:,
1191
+ # The end date of the discount interval.
1055
1192
  end_date:,
1193
+ # The start date of the discount interval.
1056
1194
  start_date:,
1195
+ # Only available if discount_type is `usage`. Number of usage units that this
1196
+ # discount is for
1057
1197
  usage_discount:,
1058
1198
  discount_type: :usage
1059
1199
  ); end
@@ -1140,14 +1280,18 @@ module Orb
1140
1280
  .returns(T.attached_class)
1141
1281
  end
1142
1282
  def self.new(
1283
+ # The price ids that this maximum interval applies to.
1143
1284
  applies_to_price_ids:,
1285
+ # The price interval ids that this maximum interval applies to.
1144
1286
  applies_to_price_interval_ids:,
1287
+ # The end date of the maximum interval.
1145
1288
  end_date:,
1289
+ # The maximum amount to charge in a given billing period for the price intervals
1290
+ # this transform applies to.
1146
1291
  maximum_amount:,
1292
+ # The start date of the maximum interval.
1147
1293
  start_date:
1148
- )
1149
- end
1150
-
1294
+ ); end
1151
1295
  sig do
1152
1296
  override
1153
1297
  .returns(
@@ -1196,14 +1340,18 @@ module Orb
1196
1340
  .returns(T.attached_class)
1197
1341
  end
1198
1342
  def self.new(
1343
+ # The price ids that this minimum interval applies to.
1199
1344
  applies_to_price_ids:,
1345
+ # The price interval ids that this minimum interval applies to.
1200
1346
  applies_to_price_interval_ids:,
1347
+ # The end date of the minimum interval.
1201
1348
  end_date:,
1349
+ # The minimum amount to charge in a given billing period for the price intervals
1350
+ # this minimum applies to.
1202
1351
  minimum_amount:,
1352
+ # The start date of the minimum interval.
1203
1353
  start_date:
1204
- )
1205
- end
1206
-
1354
+ ); end
1207
1355
  sig do
1208
1356
  override
1209
1357
  .returns(
@@ -1384,14 +1532,40 @@ module Orb
1384
1532
  end
1385
1533
  def self.new(
1386
1534
  id:,
1535
+ # The day of the month that Orb bills for this price
1387
1536
  billing_cycle_day:,
1537
+ # The end of the current billing period. This is an exclusive timestamp, such that
1538
+ # the instant returned is exactly the end of the billing period. Set to null if
1539
+ # this price interval is not currently active.
1388
1540
  current_billing_period_end_date:,
1541
+ # The start date of the current billing period. This is an inclusive timestamp;
1542
+ # the instant returned is exactly the beginning of the billing period. Set to null
1543
+ # if this price interval is not currently active.
1389
1544
  current_billing_period_start_date:,
1545
+ # The end date of the price interval. This is the date that Orb stops billing for
1546
+ # this price.
1390
1547
  end_date:,
1548
+ # An additional filter to apply to usage queries.
1391
1549
  filter:,
1550
+ # The fixed fee quantity transitions for this price interval. This is only
1551
+ # relevant for fixed fees.
1392
1552
  fixed_fee_quantity_transitions:,
1553
+ # The Price resource represents a price that can be billed on a subscription,
1554
+ # resulting in a charge on an invoice in the form of an invoice line item. Prices
1555
+ # take a quantity and determine an amount to bill.
1556
+ #
1557
+ # Orb supports a few different pricing models out of the box. Each of these models
1558
+ # is serialized differently in a given Price object. The model_type field
1559
+ # determines the key for the configuration object that is present.
1560
+ #
1561
+ # For more on the types of prices, see
1562
+ # [the core concepts documentation](/core-concepts#plan-and-price)
1393
1563
  price:,
1564
+ # The start date of the price interval. This is the date that Orb starts billing
1565
+ # for this price.
1394
1566
  start_date:,
1567
+ # A list of customer IDs whose usage events will be aggregated and billed under
1568
+ # this price interval.
1395
1569
  usage_customer_ids:
1396
1570
  ); end
1397
1571
  sig do
@@ -1488,8 +1662,7 @@ module Orb
1488
1662
 
1489
1663
  TaggedSymbol =
1490
1664
  T.type_alias { T.all(Symbol, Orb::Models::SubscriptionChangeCancelResponse::Subscription::Status) }
1491
- OrSymbol =
1492
- T.type_alias { T.any(Symbol, String, Orb::Models::SubscriptionChangeCancelResponse::Subscription::Status::TaggedSymbol) }
1665
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1493
1666
 
1494
1667
  ACTIVE =
1495
1668
  T.let(:active, Orb::Models::SubscriptionChangeCancelResponse::Subscription::Status::TaggedSymbol)
@@ -1544,8 +1717,16 @@ module Orb
1544
1717
  )
1545
1718
  .returns(T.attached_class)
1546
1719
  end
1547
- def self.new(created_credit_notes:, created_invoices:, voided_credit_notes:, voided_invoices:); end
1548
-
1720
+ def self.new(
1721
+ # The credit notes that were created as part of this operation.
1722
+ created_credit_notes:,
1723
+ # The invoices that were created as part of this operation.
1724
+ created_invoices:,
1725
+ # The credit notes that were voided as part of this operation.
1726
+ voided_credit_notes:,
1727
+ # The invoices that were voided as part of this operation.
1728
+ voided_invoices:
1729
+ ); end
1549
1730
  sig do
1550
1731
  override
1551
1732
  .returns(