orb-billing 0.2.0 → 0.3.1

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 (488) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +67 -0
  3. data/README.md +63 -53
  4. data/lib/orb/client.rb +4 -4
  5. data/lib/orb/errors.rb +9 -9
  6. data/lib/orb/file_part.rb +55 -0
  7. data/lib/orb/internal/page.rb +7 -11
  8. data/lib/orb/internal/transport/base_client.rb +10 -10
  9. data/lib/orb/internal/transport/pooled_net_requester.rb +2 -2
  10. data/lib/orb/internal/type/array_of.rb +11 -0
  11. data/lib/orb/internal/type/base_model.rb +33 -23
  12. data/lib/orb/internal/type/base_page.rb +9 -1
  13. data/lib/orb/internal/type/boolean.rb +14 -11
  14. data/lib/orb/internal/type/converter.rb +4 -1
  15. data/lib/orb/internal/type/enum.rb +19 -16
  16. data/lib/orb/internal/type/{io_like.rb → file_input.rb} +33 -15
  17. data/lib/orb/internal/type/hash_of.rb +11 -0
  18. data/lib/orb/internal/type/request_parameters.rb +3 -10
  19. data/lib/orb/internal/type/union.rb +10 -1
  20. data/lib/orb/internal/type/unknown.rb +14 -11
  21. data/lib/orb/internal/util.rb +88 -64
  22. data/lib/orb/internal.rb +0 -1
  23. data/lib/orb/models/alert.rb +68 -71
  24. data/lib/orb/models/alert_create_for_customer_params.rb +20 -25
  25. data/lib/orb/models/alert_create_for_external_customer_params.rb +20 -25
  26. data/lib/orb/models/alert_create_for_subscription_params.rb +20 -25
  27. data/lib/orb/models/alert_disable_params.rb +5 -9
  28. data/lib/orb/models/alert_enable_params.rb +5 -9
  29. data/lib/orb/models/alert_list_params.rb +26 -36
  30. data/lib/orb/models/alert_retrieve_params.rb +3 -8
  31. data/lib/orb/models/alert_update_params.rb +14 -18
  32. data/lib/orb/models/amount_discount.rb +14 -14
  33. data/lib/orb/models/billable_metric.rb +23 -20
  34. data/lib/orb/models/billing_cycle_relative_date.rb +2 -5
  35. data/lib/orb/models/coupon.rb +28 -21
  36. data/lib/orb/models/coupon_archive_params.rb +3 -8
  37. data/lib/orb/models/coupon_create_params.rb +29 -34
  38. data/lib/orb/models/coupon_fetch_params.rb +3 -8
  39. data/lib/orb/models/coupon_list_params.rb +17 -17
  40. data/lib/orb/models/coupons/subscription_list_params.rb +12 -15
  41. data/lib/orb/models/credit_note.rb +100 -166
  42. data/lib/orb/models/credit_note_create_params.rb +15 -23
  43. data/lib/orb/models/credit_note_fetch_params.rb +3 -8
  44. data/lib/orb/models/credit_note_list_params.rb +20 -30
  45. data/lib/orb/models/customer.rb +224 -271
  46. data/lib/orb/models/customer_create_params.rb +216 -257
  47. data/lib/orb/models/customer_delete_params.rb +3 -8
  48. data/lib/orb/models/customer_fetch_by_external_id_params.rb +3 -8
  49. data/lib/orb/models/customer_fetch_params.rb +3 -8
  50. data/lib/orb/models/customer_list_params.rb +20 -30
  51. data/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rb +3 -8
  52. data/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rb +3 -8
  53. data/lib/orb/models/customer_update_by_external_id_params.rb +212 -257
  54. data/lib/orb/models/customer_update_params.rb +212 -255
  55. data/lib/orb/models/customers/balance_transaction_create_params.rb +11 -16
  56. data/lib/orb/models/customers/balance_transaction_create_response.rb +33 -51
  57. data/lib/orb/models/customers/balance_transaction_list_params.rb +20 -30
  58. data/lib/orb/models/customers/balance_transaction_list_response.rb +33 -51
  59. data/lib/orb/models/customers/cost_list_by_external_id_params.rb +17 -17
  60. data/lib/orb/models/customers/cost_list_by_external_id_response.rb +23 -27
  61. data/lib/orb/models/customers/cost_list_params.rb +17 -17
  62. data/lib/orb/models/customers/cost_list_response.rb +23 -27
  63. data/lib/orb/models/customers/credit_list_by_external_id_params.rb +18 -22
  64. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +10 -17
  65. data/lib/orb/models/customers/credit_list_params.rb +18 -22
  66. data/lib/orb/models/customers/credit_list_response.rb +10 -17
  67. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +64 -66
  68. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +384 -491
  69. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +63 -66
  70. data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +384 -498
  71. data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +33 -48
  72. data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +384 -494
  73. data/lib/orb/models/customers/credits/ledger_list_params.rb +32 -48
  74. data/lib/orb/models/customers/credits/ledger_list_response.rb +383 -501
  75. data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +47 -50
  76. data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +43 -46
  77. data/lib/orb/models/customers/credits/top_up_create_params.rb +46 -50
  78. data/lib/orb/models/customers/credits/top_up_create_response.rb +42 -46
  79. data/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rb +4 -9
  80. data/lib/orb/models/customers/credits/top_up_delete_params.rb +4 -9
  81. data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +12 -15
  82. data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +43 -46
  83. data/lib/orb/models/customers/credits/top_up_list_params.rb +12 -15
  84. data/lib/orb/models/customers/credits/top_up_list_response.rb +42 -46
  85. data/lib/orb/models/dimensional_price_group.rb +21 -15
  86. data/lib/orb/models/dimensional_price_group_create_params.rb +17 -23
  87. data/lib/orb/models/dimensional_price_group_list_params.rb +12 -15
  88. data/lib/orb/models/dimensional_price_group_retrieve_params.rb +3 -8
  89. data/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rb +3 -8
  90. data/lib/orb/models/dimensional_price_groups.rb +3 -7
  91. data/lib/orb/models/discount.rb +2 -3
  92. data/lib/orb/models/evaluate_price_group.rb +8 -11
  93. data/lib/orb/models/event_deprecate_params.rb +3 -8
  94. data/lib/orb/models/event_deprecate_response.rb +2 -6
  95. data/lib/orb/models/event_ingest_params.rb +33 -27
  96. data/lib/orb/models/event_ingest_response.rb +23 -24
  97. data/lib/orb/models/event_search_params.rb +15 -11
  98. data/lib/orb/models/event_search_response.rb +27 -22
  99. data/lib/orb/models/event_update_params.rb +19 -13
  100. data/lib/orb/models/event_update_response.rb +2 -6
  101. data/lib/orb/models/events/backfill_close_params.rb +3 -8
  102. data/lib/orb/models/events/backfill_close_response.rb +34 -39
  103. data/lib/orb/models/events/backfill_create_params.rb +28 -32
  104. data/lib/orb/models/events/backfill_create_response.rb +34 -39
  105. data/lib/orb/models/events/backfill_fetch_params.rb +3 -8
  106. data/lib/orb/models/events/backfill_fetch_response.rb +34 -39
  107. data/lib/orb/models/events/backfill_list_params.rb +12 -15
  108. data/lib/orb/models/events/backfill_list_response.rb +34 -39
  109. data/lib/orb/models/events/backfill_revert_params.rb +3 -8
  110. data/lib/orb/models/events/backfill_revert_response.rb +34 -39
  111. data/lib/orb/models/events/event_volumes.rb +11 -17
  112. data/lib/orb/models/events/volume_list_params.rb +19 -22
  113. data/lib/orb/models/invoice.rb +619 -681
  114. data/lib/orb/models/invoice_create_params.rb +52 -61
  115. data/lib/orb/models/invoice_fetch_params.rb +3 -8
  116. data/lib/orb/models/invoice_fetch_upcoming_params.rb +4 -9
  117. data/lib/orb/models/invoice_fetch_upcoming_response.rb +618 -669
  118. data/lib/orb/models/invoice_issue_params.rb +10 -14
  119. data/lib/orb/models/invoice_level_discount.rb +2 -3
  120. data/lib/orb/models/invoice_line_item_create_params.rb +19 -14
  121. data/lib/orb/models/invoice_line_item_create_response.rb +281 -306
  122. data/lib/orb/models/invoice_list_params.rb +51 -66
  123. data/lib/orb/models/invoice_mark_paid_params.rb +9 -11
  124. data/lib/orb/models/invoice_pay_params.rb +3 -8
  125. data/lib/orb/models/invoice_update_params.rb +9 -9
  126. data/lib/orb/models/invoice_void_params.rb +3 -8
  127. data/lib/orb/models/item.rb +14 -25
  128. data/lib/orb/models/item_create_params.rb +5 -9
  129. data/lib/orb/models/item_fetch_params.rb +3 -8
  130. data/lib/orb/models/item_list_params.rb +12 -15
  131. data/lib/orb/models/item_update_params.rb +10 -22
  132. data/lib/orb/models/metric_create_params.rb +17 -13
  133. data/lib/orb/models/metric_fetch_params.rb +3 -8
  134. data/lib/orb/models/metric_list_params.rb +20 -30
  135. data/lib/orb/models/metric_update_params.rb +9 -9
  136. data/lib/orb/models/pagination_metadata.rb +3 -7
  137. data/lib/orb/models/percentage_discount.rb +15 -14
  138. data/lib/orb/models/plan.rb +259 -291
  139. data/lib/orb/models/plan_create_params.rb +2070 -2466
  140. data/lib/orb/models/plan_fetch_params.rb +3 -8
  141. data/lib/orb/models/plan_list_params.rb +25 -42
  142. data/lib/orb/models/plan_update_params.rb +12 -10
  143. data/lib/orb/models/plans/external_plan_id_fetch_params.rb +3 -8
  144. data/lib/orb/models/plans/external_plan_id_update_params.rb +12 -10
  145. data/lib/orb/models/price.rb +3842 -5005
  146. data/lib/orb/models/price_create_params.rb +203 -244
  147. data/lib/orb/models/price_evaluate_params.rb +21 -30
  148. data/lib/orb/models/price_evaluate_response.rb +2 -6
  149. data/lib/orb/models/price_fetch_params.rb +3 -8
  150. data/lib/orb/models/price_list_params.rb +12 -15
  151. data/lib/orb/models/price_update_params.rb +9 -9
  152. data/lib/orb/models/prices/external_price_id_fetch_params.rb +3 -8
  153. data/lib/orb/models/prices/external_price_id_update_params.rb +9 -9
  154. data/lib/orb/models/subscription.rb +360 -405
  155. data/lib/orb/models/subscription_cancel_params.rb +16 -16
  156. data/lib/orb/models/subscription_cancel_response.rb +358 -399
  157. data/lib/orb/models/subscription_change_apply_params.rb +7 -10
  158. data/lib/orb/models/subscription_change_apply_response.rb +384 -418
  159. data/lib/orb/models/subscription_change_cancel_params.rb +3 -8
  160. data/lib/orb/models/subscription_change_cancel_response.rb +384 -417
  161. data/lib/orb/models/subscription_change_retrieve_params.rb +3 -8
  162. data/lib/orb/models/subscription_change_retrieve_response.rb +385 -417
  163. data/lib/orb/models/subscription_create_params.rb +4735 -5417
  164. data/lib/orb/models/subscription_create_response.rb +358 -399
  165. data/lib/orb/models/subscription_fetch_costs_params.rb +17 -17
  166. data/lib/orb/models/subscription_fetch_costs_response.rb +23 -27
  167. data/lib/orb/models/subscription_fetch_params.rb +3 -8
  168. data/lib/orb/models/subscription_fetch_schedule_params.rb +20 -30
  169. data/lib/orb/models/subscription_fetch_schedule_response.rb +15 -17
  170. data/lib/orb/models/subscription_fetch_usage_params.rb +32 -43
  171. data/lib/orb/models/subscription_list_params.rb +28 -41
  172. data/lib/orb/models/subscription_price_intervals_params.rb +2560 -3040
  173. data/lib/orb/models/subscription_price_intervals_response.rb +361 -399
  174. data/lib/orb/models/subscription_schedule_plan_change_params.rb +4728 -5411
  175. data/lib/orb/models/subscription_schedule_plan_change_response.rb +361 -398
  176. data/lib/orb/models/subscription_trigger_phase_params.rb +12 -10
  177. data/lib/orb/models/subscription_trigger_phase_response.rb +360 -399
  178. data/lib/orb/models/subscription_unschedule_cancellation_params.rb +3 -8
  179. data/lib/orb/models/subscription_unschedule_cancellation_response.rb +361 -398
  180. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rb +5 -9
  181. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +362 -396
  182. data/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rb +3 -8
  183. data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +362 -396
  184. data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +22 -33
  185. data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +361 -398
  186. data/lib/orb/models/subscription_update_params.rb +21 -23
  187. data/lib/orb/models/subscription_update_trial_params.rb +15 -18
  188. data/lib/orb/models/subscription_update_trial_response.rb +360 -399
  189. data/lib/orb/models/subscription_usage.rb +37 -80
  190. data/lib/orb/models/subscriptions.rb +3 -7
  191. data/lib/orb/models/top_level_ping_params.rb +3 -8
  192. data/lib/orb/models/top_level_ping_response.rb +2 -6
  193. data/lib/orb/models/trial_discount.rb +16 -24
  194. data/lib/orb/models/usage_discount.rb +15 -14
  195. data/lib/orb/models.rb +220 -0
  196. data/lib/orb/request_options.rb +4 -6
  197. data/lib/orb/resources/alerts.rb +48 -17
  198. data/lib/orb/resources/coupons/subscriptions.rb +9 -2
  199. data/lib/orb/resources/coupons.rb +26 -8
  200. data/lib/orb/resources/credit_notes.rb +17 -4
  201. data/lib/orb/resources/customers/balance_transactions.rb +18 -3
  202. data/lib/orb/resources/customers/costs.rb +26 -8
  203. data/lib/orb/resources/customers/credits/ledger.rb +112 -32
  204. data/lib/orb/resources/customers/credits/top_ups.rb +67 -20
  205. data/lib/orb/resources/customers/credits.rb +28 -8
  206. data/lib/orb/resources/customers.rb +138 -39
  207. data/lib/orb/resources/dimensional_price_groups.rb +19 -4
  208. data/lib/orb/resources/events/backfills.rb +32 -9
  209. data/lib/orb/resources/events/volume.rb +14 -4
  210. data/lib/orb/resources/events.rb +40 -11
  211. data/lib/orb/resources/invoice_line_items.rb +16 -6
  212. data/lib/orb/resources/invoices.rb +77 -17
  213. data/lib/orb/resources/items.rb +10 -3
  214. data/lib/orb/resources/metrics.rb +33 -8
  215. data/lib/orb/resources/plans/external_plan_id.rb +10 -2
  216. data/lib/orb/resources/plans.rb +47 -11
  217. data/lib/orb/resources/prices/external_price_id.rb +9 -3
  218. data/lib/orb/resources/prices.rb +101 -26
  219. data/lib/orb/resources/subscription_changes.rb +5 -2
  220. data/lib/orb/resources/subscriptions.rb +292 -78
  221. data/lib/orb/version.rb +1 -1
  222. data/lib/orb.rb +2 -10
  223. data/rbi/{lib/orb → orb}/client.rbi +4 -4
  224. data/rbi/{lib/orb → orb}/errors.rbi +1 -1
  225. data/rbi/orb/file_part.rbi +34 -0
  226. data/rbi/{lib/orb → orb}/internal/transport/base_client.rbi +19 -5
  227. data/rbi/{lib/orb → orb}/internal/type/array_of.rbi +3 -0
  228. data/rbi/{lib/orb → orb}/internal/type/base_model.rbi +7 -1
  229. data/rbi/{lib/orb → orb}/internal/type/base_page.rbi +2 -0
  230. data/rbi/{lib/orb → orb}/internal/type/enum.rbi +3 -6
  231. data/rbi/{lib/orb/internal/type/io_like.rbi → orb/internal/type/file_input.rbi} +5 -2
  232. data/rbi/{lib/orb → orb}/internal/type/hash_of.rbi +3 -0
  233. data/rbi/{lib/orb → orb}/internal/type/request_parameters.rbi +1 -1
  234. data/rbi/{lib/orb → orb}/internal/type/union.rbi +3 -0
  235. data/rbi/{lib/orb → orb}/internal/util.rbi +28 -19
  236. data/rbi/{lib/orb → orb}/internal.rbi +0 -1
  237. data/rbi/{lib/orb → orb}/models/alert.rbi +28 -8
  238. data/rbi/{lib/orb → orb}/models/alert_create_for_customer_params.rbi +16 -6
  239. data/rbi/{lib/orb → orb}/models/alert_create_for_external_customer_params.rbi +16 -6
  240. data/rbi/{lib/orb → orb}/models/alert_create_for_subscription_params.rbi +16 -6
  241. data/rbi/{lib/orb → orb}/models/alert_disable_params.rbi +5 -2
  242. data/rbi/{lib/orb → orb}/models/alert_enable_params.rbi +5 -2
  243. data/rbi/{lib/orb → orb}/models/alert_list_params.rbi +6 -0
  244. data/rbi/{lib/orb → orb}/models/alert_update_params.rbi +11 -4
  245. data/rbi/{lib/orb → orb}/models/amount_discount.rbi +10 -4
  246. data/rbi/{lib/orb → orb}/models/billable_metric.rbi +16 -3
  247. data/rbi/{lib/orb → orb}/models/billing_cycle_relative_date.rbi +1 -1
  248. data/rbi/{lib/orb → orb}/models/coupon.rbi +10 -3
  249. data/rbi/{lib/orb → orb}/models/coupon_create_params.rbi +15 -12
  250. data/rbi/{lib/orb → orb}/models/coupon_list_params.rbi +13 -3
  251. data/rbi/{lib/orb → orb}/models/coupons/subscription_list_params.rbi +8 -2
  252. data/rbi/{lib/orb → orb}/models/credit_note.rbi +44 -12
  253. data/rbi/{lib/orb → orb}/models/credit_note_create_params.rbi +15 -6
  254. data/rbi/{lib/orb → orb}/models/credit_note_list_params.rbi +3 -0
  255. data/rbi/{lib/orb → orb}/models/customer.rbi +130 -11
  256. data/rbi/{lib/orb → orb}/models/customer_create_params.rbi +151 -17
  257. data/rbi/{lib/orb → orb}/models/customer_list_params.rbi +3 -0
  258. data/rbi/{lib/orb → orb}/models/customer_update_by_external_id_params.rbi +149 -17
  259. data/rbi/{lib/orb → orb}/models/customer_update_params.rbi +149 -17
  260. data/rbi/{lib/orb → orb}/models/customers/balance_transaction_create_params.rbi +8 -4
  261. data/rbi/{lib/orb → orb}/models/customers/balance_transaction_create_response.rbi +18 -8
  262. data/rbi/{lib/orb → orb}/models/customers/balance_transaction_list_params.rbi +3 -0
  263. data/rbi/{lib/orb → orb}/models/customers/balance_transaction_list_response.rbi +18 -8
  264. data/rbi/{lib/orb → orb}/models/customers/cost_list_by_external_id_params.rbi +9 -5
  265. data/rbi/orb/models/customers/cost_list_by_external_id_response.rbi +225 -0
  266. data/rbi/{lib/orb → orb}/models/customers/cost_list_params.rbi +9 -5
  267. data/rbi/orb/models/customers/cost_list_response.rbi +223 -0
  268. data/rbi/{lib/orb → orb}/models/customers/credit_list_by_external_id_params.rbi +13 -3
  269. data/rbi/{lib/orb → orb}/models/customers/credit_list_by_external_id_response.rbi +1 -2
  270. data/rbi/{lib/orb → orb}/models/customers/credit_list_params.rbi +13 -3
  271. data/rbi/{lib/orb → orb}/models/customers/credit_list_response.rbi +1 -2
  272. data/rbi/{lib/orb → orb}/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +40 -18
  273. data/rbi/{lib/orb/models/customers/credits/ledger_create_entry_response.rbi → orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi} +157 -170
  274. data/rbi/{lib/orb → orb}/models/customers/credits/ledger_create_entry_params.rbi +40 -6
  275. data/rbi/{lib/orb/models/customers/credits/ledger_list_response.rbi → orb/models/customers/credits/ledger_create_entry_response.rbi} +149 -196
  276. data/rbi/{lib/orb → orb}/models/customers/credits/ledger_list_by_external_id_params.rbi +6 -16
  277. data/rbi/{lib/orb → orb}/models/customers/credits/ledger_list_by_external_id_response.rbi +148 -229
  278. data/rbi/{lib/orb → orb}/models/customers/credits/ledger_list_params.rbi +6 -4
  279. data/rbi/{lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi → orb/models/customers/credits/ledger_list_response.rbi} +149 -343
  280. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_create_by_external_id_params.rbi +27 -10
  281. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_create_by_external_id_response.rbi +25 -10
  282. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_create_params.rbi +27 -4
  283. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_create_response.rbi +25 -10
  284. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_list_by_external_id_params.rbi +8 -2
  285. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_list_by_external_id_response.rbi +25 -10
  286. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_list_params.rbi +8 -2
  287. data/rbi/{lib/orb → orb}/models/customers/credits/top_up_list_response.rbi +25 -4
  288. data/rbi/{lib/orb → orb}/models/dimensional_price_group.rbi +11 -3
  289. data/rbi/{lib/orb → orb}/models/dimensional_price_group_create_params.rbi +4 -0
  290. data/rbi/{lib/orb → orb}/models/dimensional_price_group_list_params.rbi +8 -2
  291. data/rbi/{lib/orb → orb}/models/evaluate_price_group.rbi +8 -2
  292. data/rbi/{lib/orb → orb}/models/event_deprecate_response.rbi +4 -2
  293. data/rbi/{lib/orb → orb}/models/event_ingest_params.rbi +22 -5
  294. data/rbi/{lib/orb → orb}/models/event_ingest_response.rbi +15 -4
  295. data/rbi/{lib/orb → orb}/models/event_search_params.rbi +14 -2
  296. data/rbi/{lib/orb → orb}/models/event_search_response.rbi +14 -3
  297. data/rbi/{lib/orb → orb}/models/event_update_params.rbi +10 -3
  298. data/rbi/{lib/orb → orb}/models/event_update_response.rbi +4 -2
  299. data/rbi/{lib/orb → orb}/models/events/backfill_close_response.rbi +14 -2
  300. data/rbi/{lib/orb → orb}/models/events/backfill_create_params.rbi +18 -0
  301. data/rbi/{lib/orb → orb}/models/events/backfill_create_response.rbi +14 -2
  302. data/rbi/{lib/orb → orb}/models/events/backfill_fetch_response.rbi +14 -2
  303. data/rbi/{lib/orb → orb}/models/events/backfill_list_params.rbi +8 -2
  304. data/rbi/{lib/orb → orb}/models/events/backfill_list_response.rbi +14 -2
  305. data/rbi/{lib/orb → orb}/models/events/backfill_revert_response.rbi +14 -2
  306. data/rbi/{lib/orb → orb}/models/events/event_volumes.rbi +8 -4
  307. data/rbi/{lib/orb → orb}/models/events/volume_list_params.rbi +18 -2
  308. data/rbi/{lib/orb → orb}/models/invoice.rbi +513 -202
  309. data/rbi/{lib/orb → orb}/models/invoice_create_params.rbi +38 -6
  310. data/rbi/{lib/orb → orb}/models/invoice_fetch_upcoming_response.rbi +513 -216
  311. data/rbi/{lib/orb → orb}/models/invoice_issue_params.rbi +9 -2
  312. data/rbi/{lib/orb → orb}/models/invoice_line_item_create_params.rbi +16 -2
  313. data/rbi/{lib/orb → orb}/models/invoice_line_item_create_response.rbi +279 -182
  314. data/rbi/{lib/orb → orb}/models/invoice_list_params.rbi +9 -2
  315. data/rbi/{lib/orb → orb}/models/invoice_mark_paid_params.rbi +9 -2
  316. data/rbi/{lib/orb → orb}/models/invoice_update_params.rbi +7 -2
  317. data/rbi/{lib/orb → orb}/models/item.rbi +1 -2
  318. data/rbi/{lib/orb → orb}/models/item_create_params.rbi +5 -2
  319. data/rbi/{lib/orb → orb}/models/item_list_params.rbi +8 -2
  320. data/rbi/{lib/orb → orb}/models/item_update_params.rbi +1 -8
  321. data/rbi/{lib/orb → orb}/models/metric_create_params.rbi +15 -2
  322. data/rbi/{lib/orb → orb}/models/metric_list_params.rbi +3 -0
  323. data/rbi/{lib/orb → orb}/models/metric_update_params.rbi +7 -2
  324. data/rbi/{lib/orb → orb}/models/percentage_discount.rbi +11 -4
  325. data/rbi/{lib/orb → orb}/models/plan.rbi +207 -120
  326. data/rbi/{lib/orb → orb}/models/plan_create_params.rbi +1971 -2414
  327. data/rbi/{lib/orb → orb}/models/plan_list_params.rbi +5 -1
  328. data/rbi/{lib/orb → orb}/models/plan_update_params.rbi +11 -2
  329. data/rbi/{lib/orb → orb}/models/plans/external_plan_id_update_params.rbi +11 -2
  330. data/rbi/{lib/orb → orb}/models/price.rbi +2594 -2957
  331. data/rbi/{lib/orb → orb}/models/price_create_params.rbi +137 -53
  332. data/rbi/{lib/orb → orb}/models/price_evaluate_params.rbi +10 -0
  333. data/rbi/{lib/orb → orb}/models/price_list_params.rbi +8 -2
  334. data/rbi/{lib/orb → orb}/models/price_update_params.rbi +7 -2
  335. data/rbi/{lib/orb → orb}/models/prices/external_price_id_update_params.rbi +7 -2
  336. data/rbi/{lib/orb → orb}/models/subscription.rbi +292 -129
  337. data/rbi/{lib/orb → orb}/models/subscription_cancel_params.rbi +8 -5
  338. data/rbi/{lib/orb → orb}/models/subscription_cancel_response.rbi +305 -132
  339. data/rbi/{lib/orb → orb}/models/subscription_change_apply_params.rbi +7 -2
  340. data/rbi/{lib/orb → orb}/models/subscription_change_apply_response.rbi +317 -136
  341. data/rbi/{lib/orb → orb}/models/subscription_change_cancel_response.rbi +317 -136
  342. data/rbi/{lib/orb → orb}/models/subscription_change_retrieve_response.rbi +317 -136
  343. data/rbi/{lib/orb → orb}/models/subscription_create_params.rbi +4271 -4270
  344. data/rbi/{lib/orb → orb}/models/subscription_create_response.rbi +305 -132
  345. data/rbi/{lib/orb → orb}/models/subscription_fetch_costs_params.rbi +9 -5
  346. data/rbi/orb/models/subscription_fetch_costs_response.rbi +221 -0
  347. data/rbi/{lib/orb → orb}/models/subscription_fetch_schedule_params.rbi +3 -0
  348. data/rbi/{lib/orb → orb}/models/subscription_fetch_schedule_response.rbi +8 -2
  349. data/rbi/{lib/orb → orb}/models/subscription_fetch_usage_params.rbi +13 -4
  350. data/rbi/{lib/orb → orb}/models/subscription_list_params.rbi +4 -2
  351. data/rbi/{lib/orb → orb}/models/subscription_price_intervals_params.rbi +2354 -2317
  352. data/rbi/{lib/orb → orb}/models/subscription_price_intervals_response.rbi +305 -132
  353. data/rbi/{lib/orb → orb}/models/subscription_schedule_plan_change_params.rbi +4280 -3758
  354. data/rbi/{lib/orb → orb}/models/subscription_schedule_plan_change_response.rbi +305 -132
  355. data/rbi/{lib/orb → orb}/models/subscription_trigger_phase_params.rbi +10 -2
  356. data/rbi/{lib/orb → orb}/models/subscription_trigger_phase_response.rbi +305 -132
  357. data/rbi/{lib/orb → orb}/models/subscription_unschedule_cancellation_response.rbi +305 -132
  358. data/rbi/{lib/orb → orb}/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +5 -2
  359. data/rbi/{lib/orb → orb}/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +305 -138
  360. data/rbi/{lib/orb → orb}/models/subscription_unschedule_pending_plan_changes_response.rbi +305 -132
  361. data/rbi/{lib/orb → orb}/models/subscription_update_fixed_fee_quantity_params.rbi +11 -2
  362. data/rbi/{lib/orb → orb}/models/subscription_update_fixed_fee_quantity_response.rbi +305 -132
  363. data/rbi/{lib/orb → orb}/models/subscription_update_params.rbi +15 -0
  364. data/rbi/{lib/orb → orb}/models/subscription_update_trial_params.rbi +11 -5
  365. data/rbi/{lib/orb → orb}/models/subscription_update_trial_response.rbi +305 -132
  366. data/rbi/{lib/orb → orb}/models/subscription_usage.rbi +2 -16
  367. data/rbi/{lib/orb → orb}/models/trial_discount.rbi +5 -1
  368. data/rbi/{lib/orb → orb}/models/usage_discount.rbi +11 -3
  369. data/rbi/orb/models.rbi +220 -0
  370. data/rbi/{lib/orb → orb}/request_options.rbi +2 -0
  371. data/rbi/{lib/orb → orb}/resources/alerts.rbi +8 -14
  372. data/rbi/{lib/orb → orb}/resources/coupons/subscriptions.rbi +1 -1
  373. data/rbi/{lib/orb → orb}/resources/coupons.rbi +6 -18
  374. data/rbi/{lib/orb → orb}/resources/credit_notes.rbi +3 -9
  375. data/rbi/{lib/orb → orb}/resources/customers/balance_transactions.rbi +2 -2
  376. data/rbi/{lib/orb → orb}/resources/customers/costs.rbi +2 -2
  377. data/rbi/{lib/orb → orb}/resources/customers/credits/ledger.rbi +32 -32
  378. data/rbi/{lib/orb → orb}/resources/customers/credits/top_ups.rbi +6 -18
  379. data/rbi/{lib/orb → orb}/resources/customers/credits.rbi +2 -2
  380. data/rbi/{lib/orb → orb}/resources/customers.rbi +15 -45
  381. data/rbi/{lib/orb → orb}/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +1 -4
  382. data/rbi/{lib/orb → orb}/resources/dimensional_price_groups.rbi +3 -10
  383. data/rbi/{lib/orb → orb}/resources/events/backfills.rbi +5 -18
  384. data/rbi/{lib/orb → orb}/resources/events/volume.rbi +1 -1
  385. data/rbi/{lib/orb → orb}/resources/events.rbi +4 -10
  386. data/rbi/{lib/orb → orb}/resources/invoice_line_items.rbi +1 -1
  387. data/rbi/{lib/orb → orb}/resources/invoices.rbi +9 -34
  388. data/rbi/{lib/orb → orb}/resources/items.rbi +4 -17
  389. data/rbi/{lib/orb → orb}/resources/metrics.rbi +4 -10
  390. data/rbi/{lib/orb → orb}/resources/plans/external_plan_id.rbi +2 -8
  391. data/rbi/{lib/orb → orb}/resources/plans.rbi +29 -35
  392. data/rbi/orb/resources/prices/external_price_id.rbi +103 -0
  393. data/rbi/{lib/orb → orb}/resources/prices.rbi +117 -124
  394. data/rbi/{lib/orb → orb}/resources/subscription_changes.rbi +3 -9
  395. data/rbi/{lib/orb → orb}/resources/subscriptions.rbi +16 -32
  396. data/rbi/{lib/orb → orb}/resources/top_level.rbi +1 -4
  397. data/sig/orb/file_part.rbs +21 -0
  398. data/sig/orb/internal/transport/base_client.rbs +9 -3
  399. data/sig/orb/internal/type/array_of.rbs +2 -0
  400. data/sig/orb/internal/type/base_model.rbs +4 -0
  401. data/sig/orb/internal/type/enum.rbs +2 -2
  402. data/sig/orb/internal/type/{io_like.rbs → file_input.rbs} +1 -1
  403. data/sig/orb/internal/type/hash_of.rbs +2 -0
  404. data/sig/orb/internal/type/union.rbs +2 -0
  405. data/sig/orb/internal/util.rbs +16 -12
  406. data/sig/orb/models/coupon_create_params.rbs +9 -10
  407. data/sig/orb/models/customer_create_params.rbs +9 -10
  408. data/sig/orb/models/customer_update_by_external_id_params.rbs +9 -10
  409. data/sig/orb/models/customer_update_params.rbs +9 -10
  410. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbs +113 -113
  411. data/sig/orb/models/customers/credits/ledger_create_entry_response.rbs +113 -113
  412. data/sig/orb/models/customers/credits/ledger_list_by_external_id_response.rbs +113 -113
  413. data/sig/orb/models/customers/credits/ledger_list_response.rbs +113 -113
  414. data/sig/orb/models/invoice.rbs +54 -54
  415. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +54 -54
  416. data/sig/orb/models/invoice_line_item_create_response.rbs +54 -54
  417. data/sig/orb/models/plan.rbs +21 -21
  418. data/sig/orb/models/plan_create_params.rbs +653 -653
  419. data/sig/orb/models/price.rbs +1517 -1521
  420. data/sig/orb/models/subscription.rbs +34 -34
  421. data/sig/orb/models/subscription_cancel_response.rbs +34 -34
  422. data/sig/orb/models/subscription_change_apply_response.rbs +34 -34
  423. data/sig/orb/models/subscription_change_cancel_response.rbs +34 -34
  424. data/sig/orb/models/subscription_change_retrieve_response.rbs +34 -34
  425. data/sig/orb/models/subscription_create_params.rbs +1348 -1348
  426. data/sig/orb/models/subscription_create_response.rbs +34 -34
  427. data/sig/orb/models/subscription_price_intervals_params.rbs +767 -769
  428. data/sig/orb/models/subscription_price_intervals_response.rbs +34 -34
  429. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +1348 -1348
  430. data/sig/orb/models/subscription_schedule_plan_change_response.rbs +34 -34
  431. data/sig/orb/models/subscription_trigger_phase_response.rbs +34 -34
  432. data/sig/orb/models/subscription_unschedule_cancellation_response.rbs +34 -34
  433. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbs +34 -34
  434. data/sig/orb/models/subscription_unschedule_pending_plan_changes_response.rbs +34 -34
  435. data/sig/orb/models/subscription_update_fixed_fee_quantity_response.rbs +34 -34
  436. data/sig/orb/models/subscription_update_trial_response.rbs +34 -34
  437. data/sig/orb/models.rbs +215 -0
  438. metadata +230 -224
  439. data/rbi/lib/orb/models/customers/cost_list_by_external_id_response.rbi +0 -208
  440. data/rbi/lib/orb/models/customers/cost_list_response.rbi +0 -206
  441. data/rbi/lib/orb/models/subscription_fetch_costs_response.rbi +0 -204
  442. data/rbi/lib/orb/resources/prices/external_price_id.rbi +0 -106
  443. /data/rbi/{lib/orb → orb}/internal/page.rbi +0 -0
  444. /data/rbi/{lib/orb → orb}/internal/transport/pooled_net_requester.rbi +0 -0
  445. /data/rbi/{lib/orb → orb}/internal/type/boolean.rbi +0 -0
  446. /data/rbi/{lib/orb → orb}/internal/type/converter.rbi +0 -0
  447. /data/rbi/{lib/orb → orb}/internal/type/unknown.rbi +0 -0
  448. /data/rbi/{lib/orb → orb}/models/alert_retrieve_params.rbi +0 -0
  449. /data/rbi/{lib/orb → orb}/models/coupon_archive_params.rbi +0 -0
  450. /data/rbi/{lib/orb → orb}/models/coupon_fetch_params.rbi +0 -0
  451. /data/rbi/{lib/orb → orb}/models/credit_note_fetch_params.rbi +0 -0
  452. /data/rbi/{lib/orb → orb}/models/customer_delete_params.rbi +0 -0
  453. /data/rbi/{lib/orb → orb}/models/customer_fetch_by_external_id_params.rbi +0 -0
  454. /data/rbi/{lib/orb → orb}/models/customer_fetch_params.rbi +0 -0
  455. /data/rbi/{lib/orb → orb}/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbi +0 -0
  456. /data/rbi/{lib/orb → orb}/models/customer_sync_payment_methods_from_gateway_params.rbi +0 -0
  457. /data/rbi/{lib/orb → orb}/models/customers/credits/top_up_delete_by_external_id_params.rbi +0 -0
  458. /data/rbi/{lib/orb → orb}/models/customers/credits/top_up_delete_params.rbi +0 -0
  459. /data/rbi/{lib/orb → orb}/models/dimensional_price_group_retrieve_params.rbi +0 -0
  460. /data/rbi/{lib/orb → orb}/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi +0 -0
  461. /data/rbi/{lib/orb → orb}/models/dimensional_price_groups.rbi +0 -0
  462. /data/rbi/{lib/orb → orb}/models/discount.rbi +0 -0
  463. /data/rbi/{lib/orb → orb}/models/event_deprecate_params.rbi +0 -0
  464. /data/rbi/{lib/orb → orb}/models/events/backfill_close_params.rbi +0 -0
  465. /data/rbi/{lib/orb → orb}/models/events/backfill_fetch_params.rbi +0 -0
  466. /data/rbi/{lib/orb → orb}/models/events/backfill_revert_params.rbi +0 -0
  467. /data/rbi/{lib/orb → orb}/models/invoice_fetch_params.rbi +0 -0
  468. /data/rbi/{lib/orb → orb}/models/invoice_fetch_upcoming_params.rbi +0 -0
  469. /data/rbi/{lib/orb → orb}/models/invoice_level_discount.rbi +0 -0
  470. /data/rbi/{lib/orb → orb}/models/invoice_pay_params.rbi +0 -0
  471. /data/rbi/{lib/orb → orb}/models/invoice_void_params.rbi +0 -0
  472. /data/rbi/{lib/orb → orb}/models/item_fetch_params.rbi +0 -0
  473. /data/rbi/{lib/orb → orb}/models/metric_fetch_params.rbi +0 -0
  474. /data/rbi/{lib/orb → orb}/models/pagination_metadata.rbi +0 -0
  475. /data/rbi/{lib/orb → orb}/models/plan_fetch_params.rbi +0 -0
  476. /data/rbi/{lib/orb → orb}/models/plans/external_plan_id_fetch_params.rbi +0 -0
  477. /data/rbi/{lib/orb → orb}/models/price_evaluate_response.rbi +0 -0
  478. /data/rbi/{lib/orb → orb}/models/price_fetch_params.rbi +0 -0
  479. /data/rbi/{lib/orb → orb}/models/prices/external_price_id_fetch_params.rbi +0 -0
  480. /data/rbi/{lib/orb → orb}/models/subscription_change_cancel_params.rbi +0 -0
  481. /data/rbi/{lib/orb → orb}/models/subscription_change_retrieve_params.rbi +0 -0
  482. /data/rbi/{lib/orb → orb}/models/subscription_fetch_params.rbi +0 -0
  483. /data/rbi/{lib/orb → orb}/models/subscription_unschedule_cancellation_params.rbi +0 -0
  484. /data/rbi/{lib/orb → orb}/models/subscription_unschedule_pending_plan_changes_params.rbi +0 -0
  485. /data/rbi/{lib/orb → orb}/models/subscriptions.rbi +0 -0
  486. /data/rbi/{lib/orb → orb}/models/top_level_ping_params.rbi +0 -0
  487. /data/rbi/{lib/orb → orb}/models/top_level_ping_response.rbi +0 -0
  488. /data/rbi/{lib/orb → orb}/version.rbi +0 -0
@@ -0,0 +1,225 @@
1
+ # typed: strong
2
+
3
+ module Orb
4
+ module Models
5
+ module Customers
6
+ class CostListByExternalIDResponse < Orb::Internal::Type::BaseModel
7
+ sig { returns(T::Array[Orb::Models::Customers::CostListByExternalIDResponse::Data]) }
8
+ attr_accessor :data
9
+
10
+ sig do
11
+ params(
12
+ data: T::Array[T.any(Orb::Models::Customers::CostListByExternalIDResponse::Data, Orb::Internal::AnyHash)]
13
+ )
14
+ .returns(T.attached_class)
15
+ end
16
+ def self.new(data:); end
17
+
18
+ sig { override.returns({data: T::Array[Orb::Models::Customers::CostListByExternalIDResponse::Data]}) }
19
+ def to_hash; end
20
+
21
+ class Data < Orb::Internal::Type::BaseModel
22
+ sig { returns(T::Array[Orb::Models::Customers::CostListByExternalIDResponse::Data::PerPriceCost]) }
23
+ attr_accessor :per_price_costs
24
+
25
+ # Total costs for the timeframe, excluding any minimums and discounts.
26
+ sig { returns(String) }
27
+ attr_accessor :subtotal
28
+
29
+ sig { returns(Time) }
30
+ attr_accessor :timeframe_end
31
+
32
+ sig { returns(Time) }
33
+ attr_accessor :timeframe_start
34
+
35
+ # Total costs for the timeframe, including any minimums and discounts.
36
+ sig { returns(String) }
37
+ attr_accessor :total
38
+
39
+ sig do
40
+ params(
41
+ per_price_costs: T::Array[T.any(Orb::Models::Customers::CostListByExternalIDResponse::Data::PerPriceCost, Orb::Internal::AnyHash)],
42
+ subtotal: String,
43
+ timeframe_end: Time,
44
+ timeframe_start: Time,
45
+ total: String
46
+ )
47
+ .returns(T.attached_class)
48
+ end
49
+ def self.new(
50
+ per_price_costs:,
51
+ # Total costs for the timeframe, excluding any minimums and discounts.
52
+ subtotal:,
53
+ timeframe_end:,
54
+ timeframe_start:,
55
+ # Total costs for the timeframe, including any minimums and discounts.
56
+ total:
57
+ ); end
58
+ sig do
59
+ override
60
+ .returns(
61
+ {
62
+ per_price_costs: T::Array[Orb::Models::Customers::CostListByExternalIDResponse::Data::PerPriceCost],
63
+ subtotal: String,
64
+ timeframe_end: Time,
65
+ timeframe_start: Time,
66
+ total: String
67
+ }
68
+ )
69
+ end
70
+ def to_hash; end
71
+
72
+ class PerPriceCost < Orb::Internal::Type::BaseModel
73
+ # The price object
74
+ sig do
75
+ returns(
76
+ T.any(
77
+ Orb::Models::Price::Unit,
78
+ Orb::Models::Price::Package,
79
+ Orb::Models::Price::Matrix,
80
+ Orb::Models::Price::Tiered,
81
+ Orb::Models::Price::TieredBps,
82
+ Orb::Models::Price::Bps,
83
+ Orb::Models::Price::BulkBps,
84
+ Orb::Models::Price::Bulk,
85
+ Orb::Models::Price::ThresholdTotalAmount,
86
+ Orb::Models::Price::TieredPackage,
87
+ Orb::Models::Price::GroupedTiered,
88
+ Orb::Models::Price::TieredWithMinimum,
89
+ Orb::Models::Price::TieredPackageWithMinimum,
90
+ Orb::Models::Price::PackageWithAllocation,
91
+ Orb::Models::Price::UnitWithPercent,
92
+ Orb::Models::Price::MatrixWithAllocation,
93
+ Orb::Models::Price::TieredWithProration,
94
+ Orb::Models::Price::UnitWithProration,
95
+ Orb::Models::Price::GroupedAllocation,
96
+ Orb::Models::Price::GroupedWithProratedMinimum,
97
+ Orb::Models::Price::GroupedWithMeteredMinimum,
98
+ Orb::Models::Price::MatrixWithDisplayName,
99
+ Orb::Models::Price::BulkWithProration,
100
+ Orb::Models::Price::GroupedTieredPackage,
101
+ Orb::Models::Price::MaxGroupTieredPackage,
102
+ Orb::Models::Price::ScalableMatrixWithUnitPricing,
103
+ Orb::Models::Price::ScalableMatrixWithTieredPricing,
104
+ Orb::Models::Price::CumulativeGroupedBulk
105
+ )
106
+ )
107
+ end
108
+ attr_accessor :price
109
+
110
+ # The price the cost is associated with
111
+ sig { returns(String) }
112
+ attr_accessor :price_id
113
+
114
+ # Price's contributions for the timeframe, excluding any minimums and discounts.
115
+ sig { returns(String) }
116
+ attr_accessor :subtotal
117
+
118
+ # Price's contributions for the timeframe, including minimums and discounts.
119
+ sig { returns(String) }
120
+ attr_accessor :total
121
+
122
+ # The price's quantity for the timeframe
123
+ sig { returns(T.nilable(Float)) }
124
+ attr_accessor :quantity
125
+
126
+ sig do
127
+ params(
128
+ price: T.any(
129
+ Orb::Models::Price::Unit,
130
+ Orb::Internal::AnyHash,
131
+ Orb::Models::Price::Package,
132
+ Orb::Models::Price::Matrix,
133
+ Orb::Models::Price::Tiered,
134
+ Orb::Models::Price::TieredBps,
135
+ Orb::Models::Price::Bps,
136
+ Orb::Models::Price::BulkBps,
137
+ Orb::Models::Price::Bulk,
138
+ Orb::Models::Price::ThresholdTotalAmount,
139
+ Orb::Models::Price::TieredPackage,
140
+ Orb::Models::Price::GroupedTiered,
141
+ Orb::Models::Price::TieredWithMinimum,
142
+ Orb::Models::Price::TieredPackageWithMinimum,
143
+ Orb::Models::Price::PackageWithAllocation,
144
+ Orb::Models::Price::UnitWithPercent,
145
+ Orb::Models::Price::MatrixWithAllocation,
146
+ Orb::Models::Price::TieredWithProration,
147
+ Orb::Models::Price::UnitWithProration,
148
+ Orb::Models::Price::GroupedAllocation,
149
+ Orb::Models::Price::GroupedWithProratedMinimum,
150
+ Orb::Models::Price::GroupedWithMeteredMinimum,
151
+ Orb::Models::Price::MatrixWithDisplayName,
152
+ Orb::Models::Price::BulkWithProration,
153
+ Orb::Models::Price::GroupedTieredPackage,
154
+ Orb::Models::Price::MaxGroupTieredPackage,
155
+ Orb::Models::Price::ScalableMatrixWithUnitPricing,
156
+ Orb::Models::Price::ScalableMatrixWithTieredPricing,
157
+ Orb::Models::Price::CumulativeGroupedBulk
158
+ ),
159
+ price_id: String,
160
+ subtotal: String,
161
+ total: String,
162
+ quantity: T.nilable(Float)
163
+ )
164
+ .returns(T.attached_class)
165
+ end
166
+ def self.new(
167
+ # The price object
168
+ price:,
169
+ # The price the cost is associated with
170
+ price_id:,
171
+ # Price's contributions for the timeframe, excluding any minimums and discounts.
172
+ subtotal:,
173
+ # Price's contributions for the timeframe, including minimums and discounts.
174
+ total:,
175
+ # The price's quantity for the timeframe
176
+ quantity: nil
177
+ ); end
178
+ sig do
179
+ override
180
+ .returns(
181
+ {
182
+ price: T.any(
183
+ Orb::Models::Price::Unit,
184
+ Orb::Models::Price::Package,
185
+ Orb::Models::Price::Matrix,
186
+ Orb::Models::Price::Tiered,
187
+ Orb::Models::Price::TieredBps,
188
+ Orb::Models::Price::Bps,
189
+ Orb::Models::Price::BulkBps,
190
+ Orb::Models::Price::Bulk,
191
+ Orb::Models::Price::ThresholdTotalAmount,
192
+ Orb::Models::Price::TieredPackage,
193
+ Orb::Models::Price::GroupedTiered,
194
+ Orb::Models::Price::TieredWithMinimum,
195
+ Orb::Models::Price::TieredPackageWithMinimum,
196
+ Orb::Models::Price::PackageWithAllocation,
197
+ Orb::Models::Price::UnitWithPercent,
198
+ Orb::Models::Price::MatrixWithAllocation,
199
+ Orb::Models::Price::TieredWithProration,
200
+ Orb::Models::Price::UnitWithProration,
201
+ Orb::Models::Price::GroupedAllocation,
202
+ Orb::Models::Price::GroupedWithProratedMinimum,
203
+ Orb::Models::Price::GroupedWithMeteredMinimum,
204
+ Orb::Models::Price::MatrixWithDisplayName,
205
+ Orb::Models::Price::BulkWithProration,
206
+ Orb::Models::Price::GroupedTieredPackage,
207
+ Orb::Models::Price::MaxGroupTieredPackage,
208
+ Orb::Models::Price::ScalableMatrixWithUnitPricing,
209
+ Orb::Models::Price::ScalableMatrixWithTieredPricing,
210
+ Orb::Models::Price::CumulativeGroupedBulk
211
+ ),
212
+ price_id: String,
213
+ subtotal: String,
214
+ total: String,
215
+ quantity: T.nilable(Float)
216
+ }
217
+ )
218
+ end
219
+ def to_hash; end
220
+ end
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
@@ -37,14 +37,19 @@ module Orb
37
37
  .returns(T.attached_class)
38
38
  end
39
39
  def self.new(
40
+ # The currency or custom pricing unit to use.
40
41
  currency: nil,
42
+ # Costs returned are exclusive of `timeframe_end`.
41
43
  timeframe_end: nil,
44
+ # Costs returned are inclusive of `timeframe_start`.
42
45
  timeframe_start: nil,
46
+ # Controls whether Orb returns cumulative costs since the start of the billing
47
+ # period, or incremental day-by-day costs. If your customer has minimums or
48
+ # discounts, it's strongly recommended that you use the default cumulative
49
+ # behavior.
43
50
  view_mode: nil,
44
51
  request_options: {}
45
- )
46
- end
47
-
52
+ ); end
48
53
  sig do
49
54
  override
50
55
  .returns(
@@ -67,8 +72,7 @@ module Orb
67
72
  extend Orb::Internal::Type::Enum
68
73
 
69
74
  TaggedSymbol = T.type_alias { T.all(Symbol, Orb::Models::Customers::CostListParams::ViewMode) }
70
- OrSymbol =
71
- T.type_alias { T.any(Symbol, String, Orb::Models::Customers::CostListParams::ViewMode::TaggedSymbol) }
75
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
72
76
 
73
77
  PERIODIC = T.let(:periodic, Orb::Models::Customers::CostListParams::ViewMode::TaggedSymbol)
74
78
  CUMULATIVE = T.let(:cumulative, Orb::Models::Customers::CostListParams::ViewMode::TaggedSymbol)
@@ -0,0 +1,223 @@
1
+ # typed: strong
2
+
3
+ module Orb
4
+ module Models
5
+ module Customers
6
+ class CostListResponse < Orb::Internal::Type::BaseModel
7
+ sig { returns(T::Array[Orb::Models::Customers::CostListResponse::Data]) }
8
+ attr_accessor :data
9
+
10
+ sig do
11
+ params(data: T::Array[T.any(Orb::Models::Customers::CostListResponse::Data, Orb::Internal::AnyHash)])
12
+ .returns(T.attached_class)
13
+ end
14
+ def self.new(data:); end
15
+
16
+ sig { override.returns({data: T::Array[Orb::Models::Customers::CostListResponse::Data]}) }
17
+ def to_hash; end
18
+
19
+ class Data < Orb::Internal::Type::BaseModel
20
+ sig { returns(T::Array[Orb::Models::Customers::CostListResponse::Data::PerPriceCost]) }
21
+ attr_accessor :per_price_costs
22
+
23
+ # Total costs for the timeframe, excluding any minimums and discounts.
24
+ sig { returns(String) }
25
+ attr_accessor :subtotal
26
+
27
+ sig { returns(Time) }
28
+ attr_accessor :timeframe_end
29
+
30
+ sig { returns(Time) }
31
+ attr_accessor :timeframe_start
32
+
33
+ # Total costs for the timeframe, including any minimums and discounts.
34
+ sig { returns(String) }
35
+ attr_accessor :total
36
+
37
+ sig do
38
+ params(
39
+ per_price_costs: T::Array[T.any(Orb::Models::Customers::CostListResponse::Data::PerPriceCost, Orb::Internal::AnyHash)],
40
+ subtotal: String,
41
+ timeframe_end: Time,
42
+ timeframe_start: Time,
43
+ total: String
44
+ )
45
+ .returns(T.attached_class)
46
+ end
47
+ def self.new(
48
+ per_price_costs:,
49
+ # Total costs for the timeframe, excluding any minimums and discounts.
50
+ subtotal:,
51
+ timeframe_end:,
52
+ timeframe_start:,
53
+ # Total costs for the timeframe, including any minimums and discounts.
54
+ total:
55
+ ); end
56
+ sig do
57
+ override
58
+ .returns(
59
+ {
60
+ per_price_costs: T::Array[Orb::Models::Customers::CostListResponse::Data::PerPriceCost],
61
+ subtotal: String,
62
+ timeframe_end: Time,
63
+ timeframe_start: Time,
64
+ total: String
65
+ }
66
+ )
67
+ end
68
+ def to_hash; end
69
+
70
+ class PerPriceCost < Orb::Internal::Type::BaseModel
71
+ # The price object
72
+ sig do
73
+ returns(
74
+ T.any(
75
+ Orb::Models::Price::Unit,
76
+ Orb::Models::Price::Package,
77
+ Orb::Models::Price::Matrix,
78
+ Orb::Models::Price::Tiered,
79
+ Orb::Models::Price::TieredBps,
80
+ Orb::Models::Price::Bps,
81
+ Orb::Models::Price::BulkBps,
82
+ Orb::Models::Price::Bulk,
83
+ Orb::Models::Price::ThresholdTotalAmount,
84
+ Orb::Models::Price::TieredPackage,
85
+ Orb::Models::Price::GroupedTiered,
86
+ Orb::Models::Price::TieredWithMinimum,
87
+ Orb::Models::Price::TieredPackageWithMinimum,
88
+ Orb::Models::Price::PackageWithAllocation,
89
+ Orb::Models::Price::UnitWithPercent,
90
+ Orb::Models::Price::MatrixWithAllocation,
91
+ Orb::Models::Price::TieredWithProration,
92
+ Orb::Models::Price::UnitWithProration,
93
+ Orb::Models::Price::GroupedAllocation,
94
+ Orb::Models::Price::GroupedWithProratedMinimum,
95
+ Orb::Models::Price::GroupedWithMeteredMinimum,
96
+ Orb::Models::Price::MatrixWithDisplayName,
97
+ Orb::Models::Price::BulkWithProration,
98
+ Orb::Models::Price::GroupedTieredPackage,
99
+ Orb::Models::Price::MaxGroupTieredPackage,
100
+ Orb::Models::Price::ScalableMatrixWithUnitPricing,
101
+ Orb::Models::Price::ScalableMatrixWithTieredPricing,
102
+ Orb::Models::Price::CumulativeGroupedBulk
103
+ )
104
+ )
105
+ end
106
+ attr_accessor :price
107
+
108
+ # The price the cost is associated with
109
+ sig { returns(String) }
110
+ attr_accessor :price_id
111
+
112
+ # Price's contributions for the timeframe, excluding any minimums and discounts.
113
+ sig { returns(String) }
114
+ attr_accessor :subtotal
115
+
116
+ # Price's contributions for the timeframe, including minimums and discounts.
117
+ sig { returns(String) }
118
+ attr_accessor :total
119
+
120
+ # The price's quantity for the timeframe
121
+ sig { returns(T.nilable(Float)) }
122
+ attr_accessor :quantity
123
+
124
+ sig do
125
+ params(
126
+ price: T.any(
127
+ Orb::Models::Price::Unit,
128
+ Orb::Internal::AnyHash,
129
+ Orb::Models::Price::Package,
130
+ Orb::Models::Price::Matrix,
131
+ Orb::Models::Price::Tiered,
132
+ Orb::Models::Price::TieredBps,
133
+ Orb::Models::Price::Bps,
134
+ Orb::Models::Price::BulkBps,
135
+ Orb::Models::Price::Bulk,
136
+ Orb::Models::Price::ThresholdTotalAmount,
137
+ Orb::Models::Price::TieredPackage,
138
+ Orb::Models::Price::GroupedTiered,
139
+ Orb::Models::Price::TieredWithMinimum,
140
+ Orb::Models::Price::TieredPackageWithMinimum,
141
+ Orb::Models::Price::PackageWithAllocation,
142
+ Orb::Models::Price::UnitWithPercent,
143
+ Orb::Models::Price::MatrixWithAllocation,
144
+ Orb::Models::Price::TieredWithProration,
145
+ Orb::Models::Price::UnitWithProration,
146
+ Orb::Models::Price::GroupedAllocation,
147
+ Orb::Models::Price::GroupedWithProratedMinimum,
148
+ Orb::Models::Price::GroupedWithMeteredMinimum,
149
+ Orb::Models::Price::MatrixWithDisplayName,
150
+ Orb::Models::Price::BulkWithProration,
151
+ Orb::Models::Price::GroupedTieredPackage,
152
+ Orb::Models::Price::MaxGroupTieredPackage,
153
+ Orb::Models::Price::ScalableMatrixWithUnitPricing,
154
+ Orb::Models::Price::ScalableMatrixWithTieredPricing,
155
+ Orb::Models::Price::CumulativeGroupedBulk
156
+ ),
157
+ price_id: String,
158
+ subtotal: String,
159
+ total: String,
160
+ quantity: T.nilable(Float)
161
+ )
162
+ .returns(T.attached_class)
163
+ end
164
+ def self.new(
165
+ # The price object
166
+ price:,
167
+ # The price the cost is associated with
168
+ price_id:,
169
+ # Price's contributions for the timeframe, excluding any minimums and discounts.
170
+ subtotal:,
171
+ # Price's contributions for the timeframe, including minimums and discounts.
172
+ total:,
173
+ # The price's quantity for the timeframe
174
+ quantity: nil
175
+ ); end
176
+ sig do
177
+ override
178
+ .returns(
179
+ {
180
+ price: T.any(
181
+ Orb::Models::Price::Unit,
182
+ Orb::Models::Price::Package,
183
+ Orb::Models::Price::Matrix,
184
+ Orb::Models::Price::Tiered,
185
+ Orb::Models::Price::TieredBps,
186
+ Orb::Models::Price::Bps,
187
+ Orb::Models::Price::BulkBps,
188
+ Orb::Models::Price::Bulk,
189
+ Orb::Models::Price::ThresholdTotalAmount,
190
+ Orb::Models::Price::TieredPackage,
191
+ Orb::Models::Price::GroupedTiered,
192
+ Orb::Models::Price::TieredWithMinimum,
193
+ Orb::Models::Price::TieredPackageWithMinimum,
194
+ Orb::Models::Price::PackageWithAllocation,
195
+ Orb::Models::Price::UnitWithPercent,
196
+ Orb::Models::Price::MatrixWithAllocation,
197
+ Orb::Models::Price::TieredWithProration,
198
+ Orb::Models::Price::UnitWithProration,
199
+ Orb::Models::Price::GroupedAllocation,
200
+ Orb::Models::Price::GroupedWithProratedMinimum,
201
+ Orb::Models::Price::GroupedWithMeteredMinimum,
202
+ Orb::Models::Price::MatrixWithDisplayName,
203
+ Orb::Models::Price::BulkWithProration,
204
+ Orb::Models::Price::GroupedTieredPackage,
205
+ Orb::Models::Price::MaxGroupTieredPackage,
206
+ Orb::Models::Price::ScalableMatrixWithUnitPricing,
207
+ Orb::Models::Price::ScalableMatrixWithTieredPricing,
208
+ Orb::Models::Price::CumulativeGroupedBulk
209
+ ),
210
+ price_id: String,
211
+ subtotal: String,
212
+ total: String,
213
+ quantity: T.nilable(Float)
214
+ }
215
+ )
216
+ end
217
+ def to_hash; end
218
+ end
219
+ end
220
+ end
221
+ end
222
+ end
223
+ end
@@ -41,9 +41,19 @@ module Orb
41
41
  )
42
42
  .returns(T.attached_class)
43
43
  end
44
- def self.new(currency: nil, cursor: nil, include_all_blocks: nil, limit: nil, request_options: {})
45
- end
46
-
44
+ def self.new(
45
+ # The ledger currency or custom pricing unit to use.
46
+ currency: nil,
47
+ # Cursor for pagination. This can be populated by the `next_cursor` value returned
48
+ # from the initial request.
49
+ cursor: nil,
50
+ # If set to True, all expired and depleted blocks, as well as active block will be
51
+ # returned.
52
+ include_all_blocks: nil,
53
+ # The number of items to fetch. Defaults to 20.
54
+ limit: nil,
55
+ request_options: {}
56
+ ); end
47
57
  sig do
48
58
  override
49
59
  .returns(
@@ -69,8 +69,7 @@ module Orb
69
69
 
70
70
  TaggedSymbol =
71
71
  T.type_alias { T.all(Symbol, Orb::Models::Customers::CreditListByExternalIDResponse::Status) }
72
- OrSymbol =
73
- T.type_alias { T.any(Symbol, String, Orb::Models::Customers::CreditListByExternalIDResponse::Status::TaggedSymbol) }
72
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
74
73
 
75
74
  ACTIVE = T.let(:active, Orb::Models::Customers::CreditListByExternalIDResponse::Status::TaggedSymbol)
76
75
  PENDING_PAYMENT =
@@ -41,9 +41,19 @@ module Orb
41
41
  )
42
42
  .returns(T.attached_class)
43
43
  end
44
- def self.new(currency: nil, cursor: nil, include_all_blocks: nil, limit: nil, request_options: {})
45
- end
46
-
44
+ def self.new(
45
+ # The ledger currency or custom pricing unit to use.
46
+ currency: nil,
47
+ # Cursor for pagination. This can be populated by the `next_cursor` value returned
48
+ # from the initial request.
49
+ cursor: nil,
50
+ # If set to True, all expired and depleted blocks, as well as active block will be
51
+ # returned.
52
+ include_all_blocks: nil,
53
+ # The number of items to fetch. Defaults to 20.
54
+ limit: nil,
55
+ request_options: {}
56
+ ); end
47
57
  sig do
48
58
  override
49
59
  .returns(
@@ -68,8 +68,7 @@ module Orb
68
68
  extend Orb::Internal::Type::Enum
69
69
 
70
70
  TaggedSymbol = T.type_alias { T.all(Symbol, Orb::Models::Customers::CreditListResponse::Status) }
71
- OrSymbol =
72
- T.type_alias { T.any(Symbol, String, Orb::Models::Customers::CreditListResponse::Status::TaggedSymbol) }
71
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
73
72
 
74
73
  ACTIVE = T.let(:active, Orb::Models::Customers::CreditListResponse::Status::TaggedSymbol)
75
74
  PENDING_PAYMENT =
@@ -109,17 +109,41 @@ module Orb
109
109
  .returns(T.attached_class)
110
110
  end
111
111
  def self.new(
112
+ # The number of credits to effect. Note that this is required for increment,
113
+ # decrement or void operations.
112
114
  amount:,
113
115
  entry_type:,
116
+ # An ISO 8601 format date that identifies the origination credit block to expire
114
117
  expiry_date:,
118
+ # A future date (specified in YYYY-MM-DD format) used for expiration change,
119
+ # denoting when credits transferred (as part of a partial block expiration) should
120
+ # expire.
115
121
  target_expiry_date:,
122
+ # The ID of the block to reverse a decrement from.
116
123
  block_id:,
124
+ # The currency or custom pricing unit to use for this ledger entry. If this is a
125
+ # real-world currency, it must match the customer's invoicing currency.
117
126
  currency: nil,
127
+ # Optional metadata that can be specified when adding ledger results via the API.
128
+ # For example, this can be used to note an increment refers to trial credits, or
129
+ # for noting corrections as a result of an incident, etc.
118
130
  description: nil,
131
+ # An ISO 8601 format date that denotes when this credit balance should become
132
+ # available for use.
119
133
  effective_date: nil,
134
+ # Passing `invoice_settings` automatically generates an invoice for the newly
135
+ # added credits. If `invoice_settings` is passed, you must specify
136
+ # per_unit_cost_basis, as the calculation of the invoice total is done on that
137
+ # basis.
120
138
  invoice_settings: nil,
139
+ # User-specified key/value pairs for the resource. Individual keys can be removed
140
+ # by setting the value to `null`, and the entire metadata mapping can be cleared
141
+ # by setting `metadata` to `null`.
121
142
  metadata: nil,
143
+ # Can only be specified when entry_type=increment. How much, in the customer's
144
+ # currency, a customer paid for a single credit in this block
122
145
  per_unit_cost_basis: nil,
146
+ # Can only be specified when `entry_type=void`. The reason for the void.
123
147
  void_reason: nil,
124
148
  request_options: {}
125
149
  ); end
@@ -150,14 +174,7 @@ module Orb
150
174
 
151
175
  TaggedSymbol =
152
176
  T.type_alias { T.all(Symbol, Orb::Models::Customers::Credits::LedgerCreateEntryByExternalIDParams::EntryType) }
153
- OrSymbol =
154
- T.type_alias do
155
- T.any(
156
- Symbol,
157
- String,
158
- Orb::Models::Customers::Credits::LedgerCreateEntryByExternalIDParams::EntryType::TaggedSymbol
159
- )
160
- end
177
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
161
178
 
162
179
  AMENDMENT =
163
180
  T.let(
@@ -211,8 +228,20 @@ module Orb
211
228
  )
212
229
  .returns(T.attached_class)
213
230
  end
214
- def self.new(auto_collection:, net_terms:, memo: nil, require_successful_payment: nil); end
215
-
231
+ def self.new(
232
+ # Whether the credits purchase invoice should auto collect with the customer's
233
+ # saved payment method.
234
+ auto_collection:,
235
+ # The net terms determines the difference between the invoice date and the issue
236
+ # date for the invoice. If you intend the invoice to be due on issue, set this
237
+ # to 0.
238
+ net_terms:,
239
+ # An optional memo to display on the invoice.
240
+ memo: nil,
241
+ # If true, the new credit block will require that the corresponding invoice is
242
+ # paid before it can be drawn down from.
243
+ require_successful_payment: nil
244
+ ); end
216
245
  sig do
217
246
  override
218
247
  .returns(
@@ -233,14 +262,7 @@ module Orb
233
262
 
234
263
  TaggedSymbol =
235
264
  T.type_alias { T.all(Symbol, Orb::Models::Customers::Credits::LedgerCreateEntryByExternalIDParams::VoidReason) }
236
- OrSymbol =
237
- T.type_alias do
238
- T.any(
239
- Symbol,
240
- String,
241
- Orb::Models::Customers::Credits::LedgerCreateEntryByExternalIDParams::VoidReason::TaggedSymbol
242
- )
243
- end
265
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
244
266
 
245
267
  REFUND =
246
268
  T.let(