orb-billing 1.14.0 → 1.15.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 (347) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/lib/orb/client.rb +14 -0
  4. data/lib/orb/internal/transport/base_client.rb +5 -0
  5. data/lib/orb/internal/type/union.rb +13 -27
  6. data/lib/orb/models/accounting_provider_config.rb +14 -3
  7. data/lib/orb/models/adjustment_interval.rb +185 -3
  8. data/lib/orb/models/alert.rb +105 -1
  9. data/lib/orb/models/alert_create_for_subscription_params.rb +120 -7
  10. data/lib/orb/models/alert_update_params.rb +113 -1
  11. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +2419 -17109
  12. data/lib/orb/models/beta_create_plan_version_params.rb +2361 -16947
  13. data/lib/orb/models/changed_subscription_resources.rb +200 -10
  14. data/lib/orb/models/conversion_rate_config.rb +18 -0
  15. data/lib/orb/models/credit_block_list_invoices_response.rb +155 -1
  16. data/lib/orb/models/credit_block_retrieve_response.rb +150 -1
  17. data/lib/orb/models/customer.rb +111 -4
  18. data/lib/orb/models/customer_create_params.rb +6 -1
  19. data/lib/orb/models/customer_tax_id.rb +15 -1
  20. data/lib/orb/models/customer_update_by_external_id_params.rb +16 -2
  21. data/lib/orb/models/customer_update_params.rb +16 -2
  22. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +155 -1
  23. data/lib/orb/models/customers/credit_list_response.rb +152 -1
  24. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +4 -4
  25. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +4 -4
  26. data/lib/orb/models/dimensional_price_group.rb +1 -1
  27. data/lib/orb/models/discount.rb +145 -1
  28. data/lib/orb/models/event_ingest_params.rb +5 -2
  29. data/lib/orb/models/invoice.rb +198 -10
  30. data/lib/orb/models/invoice_create_params.rb +6 -5
  31. data/lib/orb/models/invoice_fetch_upcoming_response.rb +200 -10
  32. data/lib/orb/models/invoice_issue_summary_response.rb +9 -3
  33. data/lib/orb/models/invoice_level_discount.rb +145 -1
  34. data/lib/orb/models/invoice_line_item_create_response.rb +189 -5
  35. data/lib/orb/models/invoice_list_summary_response.rb +9 -3
  36. data/lib/orb/models/licenses/external_license_get_usage_params.rb +3 -3
  37. data/lib/orb/models/licenses/usage_get_all_usage_params.rb +3 -3
  38. data/lib/orb/models/licenses/usage_get_usage_params.rb +3 -3
  39. data/lib/orb/models/mutated_subscription.rb +169 -4
  40. data/lib/orb/models/new_allocation_price.rb +11 -1
  41. data/lib/orb/models/new_floating_bulk_price.rb +1 -3
  42. data/lib/orb/models/new_floating_bulk_with_proration_price.rb +1 -3
  43. data/lib/orb/models/new_floating_cumulative_grouped_bulk_price.rb +1 -3
  44. data/lib/orb/models/new_floating_grouped_allocation_price.rb +1 -3
  45. data/lib/orb/models/new_floating_grouped_tiered_package_price.rb +1 -3
  46. data/lib/orb/models/new_floating_grouped_tiered_price.rb +1 -3
  47. data/lib/orb/models/new_floating_grouped_with_metered_minimum_price.rb +1 -3
  48. data/lib/orb/models/new_floating_grouped_with_prorated_minimum_price.rb +1 -3
  49. data/lib/orb/models/new_floating_matrix_price.rb +1 -3
  50. data/lib/orb/models/new_floating_matrix_with_allocation_price.rb +1 -3
  51. data/lib/orb/models/new_floating_matrix_with_display_name_price.rb +1 -3
  52. data/lib/orb/models/new_floating_max_group_tiered_package_price.rb +1 -3
  53. data/lib/orb/models/new_floating_minimum_composite_price.rb +1 -3
  54. data/lib/orb/models/new_floating_package_price.rb +1 -3
  55. data/lib/orb/models/new_floating_package_with_allocation_price.rb +1 -3
  56. data/lib/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  57. data/lib/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rb +1 -3
  58. data/lib/orb/models/new_floating_threshold_total_amount_price.rb +1 -3
  59. data/lib/orb/models/new_floating_tiered_package_price.rb +1 -3
  60. data/lib/orb/models/new_floating_tiered_package_with_minimum_price.rb +1 -3
  61. data/lib/orb/models/new_floating_tiered_price.rb +1 -3
  62. data/lib/orb/models/new_floating_tiered_with_minimum_price.rb +1 -3
  63. data/lib/orb/models/new_floating_tiered_with_proration_price.rb +1 -3
  64. data/lib/orb/models/new_floating_unit_price.rb +1 -3
  65. data/lib/orb/models/new_floating_unit_with_percent_price.rb +1 -3
  66. data/lib/orb/models/new_floating_unit_with_proration_price.rb +1 -3
  67. data/lib/orb/models/new_plan_bulk_price.rb +1 -1
  68. data/lib/orb/models/new_plan_bulk_with_proration_price.rb +1 -3
  69. data/lib/orb/models/new_plan_cumulative_grouped_bulk_price.rb +1 -3
  70. data/lib/orb/models/new_plan_grouped_allocation_price.rb +1 -3
  71. data/lib/orb/models/new_plan_grouped_tiered_package_price.rb +1 -3
  72. data/lib/orb/models/new_plan_grouped_tiered_price.rb +1 -3
  73. data/lib/orb/models/new_plan_grouped_with_metered_minimum_price.rb +1 -3
  74. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +1 -3
  75. data/lib/orb/models/new_plan_matrix_price.rb +1 -5
  76. data/lib/orb/models/new_plan_matrix_with_allocation_price.rb +1 -3
  77. data/lib/orb/models/new_plan_matrix_with_display_name_price.rb +1 -3
  78. data/lib/orb/models/new_plan_max_group_tiered_package_price.rb +1 -3
  79. data/lib/orb/models/new_plan_minimum_composite_price.rb +1 -3
  80. data/lib/orb/models/new_plan_package_price.rb +1 -5
  81. data/lib/orb/models/new_plan_package_with_allocation_price.rb +1 -3
  82. data/lib/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  83. data/lib/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +1 -3
  84. data/lib/orb/models/new_plan_threshold_total_amount_price.rb +1 -3
  85. data/lib/orb/models/new_plan_tiered_package_price.rb +1 -3
  86. data/lib/orb/models/new_plan_tiered_package_with_minimum_price.rb +1 -3
  87. data/lib/orb/models/new_plan_tiered_price.rb +1 -5
  88. data/lib/orb/models/new_plan_tiered_with_minimum_price.rb +1 -3
  89. data/lib/orb/models/new_plan_unit_price.rb +1 -1
  90. data/lib/orb/models/new_plan_unit_with_percent_price.rb +1 -3
  91. data/lib/orb/models/new_plan_unit_with_proration_price.rb +1 -3
  92. data/lib/orb/models/new_subscription_bulk_price.rb +1 -3
  93. data/lib/orb/models/new_subscription_bulk_with_proration_price.rb +1 -3
  94. data/lib/orb/models/new_subscription_cumulative_grouped_bulk_price.rb +1 -3
  95. data/lib/orb/models/new_subscription_grouped_allocation_price.rb +1 -3
  96. data/lib/orb/models/new_subscription_grouped_tiered_package_price.rb +1 -3
  97. data/lib/orb/models/new_subscription_grouped_tiered_price.rb +1 -3
  98. data/lib/orb/models/new_subscription_grouped_with_metered_minimum_price.rb +1 -3
  99. data/lib/orb/models/new_subscription_grouped_with_prorated_minimum_price.rb +1 -3
  100. data/lib/orb/models/new_subscription_matrix_price.rb +1 -3
  101. data/lib/orb/models/new_subscription_matrix_with_allocation_price.rb +1 -3
  102. data/lib/orb/models/new_subscription_matrix_with_display_name_price.rb +1 -3
  103. data/lib/orb/models/new_subscription_max_group_tiered_package_price.rb +1 -3
  104. data/lib/orb/models/new_subscription_minimum_composite_price.rb +1 -3
  105. data/lib/orb/models/new_subscription_package_price.rb +1 -3
  106. data/lib/orb/models/new_subscription_package_with_allocation_price.rb +1 -3
  107. data/lib/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  108. data/lib/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rb +1 -3
  109. data/lib/orb/models/new_subscription_threshold_total_amount_price.rb +1 -3
  110. data/lib/orb/models/new_subscription_tiered_package_price.rb +1 -3
  111. data/lib/orb/models/new_subscription_tiered_package_with_minimum_price.rb +1 -3
  112. data/lib/orb/models/new_subscription_tiered_price.rb +1 -3
  113. data/lib/orb/models/new_subscription_tiered_with_minimum_price.rb +1 -3
  114. data/lib/orb/models/new_subscription_unit_price.rb +1 -3
  115. data/lib/orb/models/new_subscription_unit_with_percent_price.rb +1 -3
  116. data/lib/orb/models/new_subscription_unit_with_proration_price.rb +1 -3
  117. data/lib/orb/models/per_price_cost.rb +2 -2
  118. data/lib/orb/models/plan.rb +189 -9
  119. data/lib/orb/models/plan_create_params.rb +1047 -8228
  120. data/lib/orb/models/plan_update_params.rb +9 -1
  121. data/lib/orb/models/plan_version.rb +186 -5
  122. data/lib/orb/models/plans/external_plan_id_update_params.rb +9 -1
  123. data/lib/orb/models/plans/migration_cancel_response.rb +22 -4
  124. data/lib/orb/models/plans/migration_list_response.rb +22 -4
  125. data/lib/orb/models/plans/migration_retrieve_response.rb +22 -4
  126. data/lib/orb/models/price.rb +2614 -1268
  127. data/lib/orb/models/price_create_params.rb +866 -49
  128. data/lib/orb/models/price_evaluate_multiple_params.rb +889 -54
  129. data/lib/orb/models/price_evaluate_preview_events_params.rb +881 -46
  130. data/lib/orb/models/price_interval.rb +2 -2
  131. data/lib/orb/models/subscription.rb +168 -4
  132. data/lib/orb/models/subscription_create_params.rb +2818 -674
  133. data/lib/orb/models/subscription_price_intervals_params.rb +1098 -57
  134. data/lib/orb/models/subscription_schedule_plan_change_params.rb +2834 -687
  135. data/lib/orb/models/subscription_update_params.rb +12 -1
  136. data/lib/orb/models.rb +2 -0
  137. data/lib/orb/resources/alerts.rb +14 -3
  138. data/lib/orb/resources/customers/credits/ledger.rb +28 -14
  139. data/lib/orb/resources/customers.rb +6 -2
  140. data/lib/orb/resources/events.rb +7 -34
  141. data/lib/orb/resources/invoices.rb +6 -2
  142. data/lib/orb/resources/licenses/external_licenses.rb +1 -1
  143. data/lib/orb/resources/licenses/usage.rb +2 -2
  144. data/lib/orb/resources/metrics.rb +5 -5
  145. data/lib/orb/resources/plans/external_plan_id.rb +5 -3
  146. data/lib/orb/resources/plans.rb +9 -5
  147. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  148. data/lib/orb/resources/prices.rb +5 -5
  149. data/lib/orb/resources/subscriptions.rb +20 -3
  150. data/lib/orb/version.rb +1 -1
  151. data/lib/orb.rb +1 -0
  152. data/rbi/orb/models/accounting_provider_config.rbi +38 -5
  153. data/rbi/orb/models/adjustment_interval.rbi +336 -0
  154. data/rbi/orb/models/alert.rbi +172 -3
  155. data/rbi/orb/models/alert_create_for_subscription_params.rbi +268 -9
  156. data/rbi/orb/models/alert_update_params.rbi +208 -0
  157. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +3833 -28395
  158. data/rbi/orb/models/beta_create_plan_version_params.rbi +3833 -28363
  159. data/rbi/orb/models/changed_subscription_resources.rbi +360 -5
  160. data/rbi/orb/models/conversion_rate_config.rbi +18 -0
  161. data/rbi/orb/models/credit_block_list_invoices_response.rbi +346 -3
  162. data/rbi/orb/models/credit_block_retrieve_response.rbi +344 -3
  163. data/rbi/orb/models/customer.rbi +190 -10
  164. data/rbi/orb/models/customer_create_params.rbi +12 -2
  165. data/rbi/orb/models/customer_tax_id.rbi +15 -1
  166. data/rbi/orb/models/customer_update_by_external_id_params.rbi +22 -2
  167. data/rbi/orb/models/customer_update_params.rbi +22 -2
  168. data/rbi/orb/models/customers/credit_list_by_external_id_response.rbi +346 -3
  169. data/rbi/orb/models/customers/credit_list_response.rbi +347 -3
  170. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +6 -6
  171. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +6 -6
  172. data/rbi/orb/models/dimensional_price_group.rbi +1 -1
  173. data/rbi/orb/models/discount.rbi +269 -1
  174. data/rbi/orb/models/event_ingest_params.rbi +4 -2
  175. data/rbi/orb/models/invoice.rbi +360 -5
  176. data/rbi/orb/models/invoice_create_params.rbi +12 -7
  177. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +360 -5
  178. data/rbi/orb/models/invoice_issue_summary_response.rbi +19 -4
  179. data/rbi/orb/models/invoice_level_discount.rbi +298 -1
  180. data/rbi/orb/models/invoice_line_item_create_response.rbi +339 -0
  181. data/rbi/orb/models/invoice_list_summary_response.rbi +19 -4
  182. data/rbi/orb/models/licenses/external_license_get_usage_params.rbi +3 -3
  183. data/rbi/orb/models/licenses/usage_get_all_usage_params.rbi +3 -3
  184. data/rbi/orb/models/licenses/usage_get_usage_params.rbi +3 -3
  185. data/rbi/orb/models/mutated_subscription.rbi +324 -2
  186. data/rbi/orb/models/new_allocation_price.rbi +12 -0
  187. data/rbi/orb/models/per_price_cost.rbi +3 -0
  188. data/rbi/orb/models/plan.rbi +339 -2
  189. data/rbi/orb/models/plan_create_params.rbi +1877 -14138
  190. data/rbi/orb/models/plan_update_params.rbi +8 -0
  191. data/rbi/orb/models/plan_version.rbi +339 -0
  192. data/rbi/orb/models/plans/external_plan_id_update_params.rbi +8 -0
  193. data/rbi/orb/models/plans/migration_cancel_response.rbi +22 -1
  194. data/rbi/orb/models/plans/migration_list_response.rbi +22 -1
  195. data/rbi/orb/models/plans/migration_retrieve_response.rbi +22 -1
  196. data/rbi/orb/models/price.rbi +4552 -2285
  197. data/rbi/orb/models/price_create_params.rbi +1540 -114
  198. data/rbi/orb/models/price_evaluate_multiple_params.rbi +1540 -114
  199. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +1540 -114
  200. data/rbi/orb/models/price_interval.rbi +3 -0
  201. data/rbi/orb/models/subscription.rbi +324 -2
  202. data/rbi/orb/models/subscription_create_params.rbi +4998 -1186
  203. data/rbi/orb/models/subscription_price_intervals_params.rbi +2127 -264
  204. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +4997 -1185
  205. data/rbi/orb/models/subscription_update_params.rbi +14 -0
  206. data/rbi/orb/models.rbi +2 -0
  207. data/rbi/orb/resources/alerts.rbi +39 -4
  208. data/rbi/orb/resources/customers/credits/ledger.rbi +28 -14
  209. data/rbi/orb/resources/customers.rbi +23 -0
  210. data/rbi/orb/resources/events.rbi +8 -35
  211. data/rbi/orb/resources/invoices.rbi +9 -3
  212. data/rbi/orb/resources/licenses/external_licenses.rbi +1 -1
  213. data/rbi/orb/resources/licenses/usage.rbi +2 -2
  214. data/rbi/orb/resources/metrics.rbi +5 -5
  215. data/rbi/orb/resources/plans/external_plan_id.rbi +5 -2
  216. data/rbi/orb/resources/plans.rbi +9 -3
  217. data/rbi/orb/resources/prices.rbi +3 -0
  218. data/rbi/orb/resources/subscriptions.rbi +29 -0
  219. data/sig/orb/models/accounting_provider_config.rbs +21 -4
  220. data/sig/orb/models/adjustment_interval.rbs +134 -0
  221. data/sig/orb/models/alert.rbs +85 -3
  222. data/sig/orb/models/alert_create_for_subscription_params.rbs +86 -4
  223. data/sig/orb/models/alert_update_params.rbs +86 -1
  224. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +1803 -11601
  225. data/sig/orb/models/beta_create_plan_version_params.rbs +1747 -11541
  226. data/sig/orb/models/changed_subscription_resources.rbs +140 -1
  227. data/sig/orb/models/conversion_rate_config.rbs +12 -0
  228. data/sig/orb/models/credit_block_list_invoices_response.rbs +124 -3
  229. data/sig/orb/models/credit_block_retrieve_response.rbs +124 -3
  230. data/sig/orb/models/customer.rbs +70 -4
  231. data/sig/orb/models/customer_create_params.rbs +2 -2
  232. data/sig/orb/models/customer_tax_id.rbs +20 -2
  233. data/sig/orb/models/customer_update_by_external_id_params.rbs +7 -2
  234. data/sig/orb/models/customer_update_params.rbs +7 -2
  235. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +124 -3
  236. data/sig/orb/models/customers/credit_list_response.rbs +124 -3
  237. data/sig/orb/models/discount.rbs +114 -0
  238. data/sig/orb/models/invoice.rbs +140 -1
  239. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +140 -1
  240. data/sig/orb/models/invoice_issue_summary_response.rbs +2 -1
  241. data/sig/orb/models/invoice_level_discount.rbs +117 -1
  242. data/sig/orb/models/invoice_line_item_create_response.rbs +134 -0
  243. data/sig/orb/models/invoice_list_summary_response.rbs +2 -1
  244. data/sig/orb/models/licenses/external_license_get_usage_params.rbs +4 -4
  245. data/sig/orb/models/licenses/usage_get_all_usage_params.rbs +4 -4
  246. data/sig/orb/models/licenses/usage_get_usage_params.rbs +4 -4
  247. data/sig/orb/models/mutated_subscription.rbs +124 -0
  248. data/sig/orb/models/new_allocation_price.rbs +5 -0
  249. data/sig/orb/models/new_floating_bulk_price.rbs +4 -4
  250. data/sig/orb/models/new_floating_bulk_with_proration_price.rbs +4 -4
  251. data/sig/orb/models/new_floating_cumulative_grouped_bulk_price.rbs +4 -4
  252. data/sig/orb/models/new_floating_grouped_allocation_price.rbs +4 -4
  253. data/sig/orb/models/new_floating_grouped_tiered_package_price.rbs +4 -4
  254. data/sig/orb/models/new_floating_grouped_tiered_price.rbs +4 -4
  255. data/sig/orb/models/new_floating_grouped_with_metered_minimum_price.rbs +4 -4
  256. data/sig/orb/models/new_floating_grouped_with_prorated_minimum_price.rbs +4 -4
  257. data/sig/orb/models/new_floating_matrix_price.rbs +4 -4
  258. data/sig/orb/models/new_floating_matrix_with_allocation_price.rbs +4 -4
  259. data/sig/orb/models/new_floating_matrix_with_display_name_price.rbs +4 -4
  260. data/sig/orb/models/new_floating_max_group_tiered_package_price.rbs +4 -4
  261. data/sig/orb/models/new_floating_minimum_composite_price.rbs +4 -4
  262. data/sig/orb/models/new_floating_package_price.rbs +4 -4
  263. data/sig/orb/models/new_floating_package_with_allocation_price.rbs +4 -4
  264. data/sig/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  265. data/sig/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  266. data/sig/orb/models/new_floating_threshold_total_amount_price.rbs +4 -4
  267. data/sig/orb/models/new_floating_tiered_package_price.rbs +4 -4
  268. data/sig/orb/models/new_floating_tiered_package_with_minimum_price.rbs +4 -4
  269. data/sig/orb/models/new_floating_tiered_price.rbs +4 -4
  270. data/sig/orb/models/new_floating_tiered_with_minimum_price.rbs +4 -4
  271. data/sig/orb/models/new_floating_tiered_with_proration_price.rbs +4 -4
  272. data/sig/orb/models/new_floating_unit_price.rbs +4 -4
  273. data/sig/orb/models/new_floating_unit_with_percent_price.rbs +4 -4
  274. data/sig/orb/models/new_floating_unit_with_proration_price.rbs +4 -4
  275. data/sig/orb/models/new_plan_bulk_price.rbs +4 -4
  276. data/sig/orb/models/new_plan_bulk_with_proration_price.rbs +4 -4
  277. data/sig/orb/models/new_plan_cumulative_grouped_bulk_price.rbs +4 -4
  278. data/sig/orb/models/new_plan_grouped_allocation_price.rbs +4 -4
  279. data/sig/orb/models/new_plan_grouped_tiered_package_price.rbs +4 -4
  280. data/sig/orb/models/new_plan_grouped_tiered_price.rbs +4 -4
  281. data/sig/orb/models/new_plan_grouped_with_metered_minimum_price.rbs +4 -4
  282. data/sig/orb/models/new_plan_grouped_with_prorated_minimum_price.rbs +4 -4
  283. data/sig/orb/models/new_plan_matrix_price.rbs +4 -4
  284. data/sig/orb/models/new_plan_matrix_with_allocation_price.rbs +4 -4
  285. data/sig/orb/models/new_plan_matrix_with_display_name_price.rbs +4 -4
  286. data/sig/orb/models/new_plan_max_group_tiered_package_price.rbs +4 -4
  287. data/sig/orb/models/new_plan_minimum_composite_price.rbs +4 -4
  288. data/sig/orb/models/new_plan_package_price.rbs +4 -4
  289. data/sig/orb/models/new_plan_package_with_allocation_price.rbs +4 -4
  290. data/sig/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  291. data/sig/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  292. data/sig/orb/models/new_plan_threshold_total_amount_price.rbs +4 -4
  293. data/sig/orb/models/new_plan_tiered_package_price.rbs +4 -4
  294. data/sig/orb/models/new_plan_tiered_package_with_minimum_price.rbs +4 -4
  295. data/sig/orb/models/new_plan_tiered_price.rbs +4 -4
  296. data/sig/orb/models/new_plan_tiered_with_minimum_price.rbs +4 -4
  297. data/sig/orb/models/new_plan_unit_price.rbs +4 -4
  298. data/sig/orb/models/new_plan_unit_with_percent_price.rbs +4 -4
  299. data/sig/orb/models/new_plan_unit_with_proration_price.rbs +4 -4
  300. data/sig/orb/models/new_subscription_bulk_price.rbs +4 -4
  301. data/sig/orb/models/new_subscription_bulk_with_proration_price.rbs +4 -4
  302. data/sig/orb/models/new_subscription_cumulative_grouped_bulk_price.rbs +4 -4
  303. data/sig/orb/models/new_subscription_grouped_allocation_price.rbs +4 -4
  304. data/sig/orb/models/new_subscription_grouped_tiered_package_price.rbs +4 -4
  305. data/sig/orb/models/new_subscription_grouped_tiered_price.rbs +4 -4
  306. data/sig/orb/models/new_subscription_grouped_with_metered_minimum_price.rbs +4 -4
  307. data/sig/orb/models/new_subscription_grouped_with_prorated_minimum_price.rbs +4 -4
  308. data/sig/orb/models/new_subscription_matrix_price.rbs +4 -4
  309. data/sig/orb/models/new_subscription_matrix_with_allocation_price.rbs +4 -4
  310. data/sig/orb/models/new_subscription_matrix_with_display_name_price.rbs +4 -4
  311. data/sig/orb/models/new_subscription_max_group_tiered_package_price.rbs +4 -4
  312. data/sig/orb/models/new_subscription_minimum_composite_price.rbs +4 -4
  313. data/sig/orb/models/new_subscription_package_price.rbs +4 -4
  314. data/sig/orb/models/new_subscription_package_with_allocation_price.rbs +4 -4
  315. data/sig/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  316. data/sig/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  317. data/sig/orb/models/new_subscription_threshold_total_amount_price.rbs +4 -4
  318. data/sig/orb/models/new_subscription_tiered_package_price.rbs +4 -4
  319. data/sig/orb/models/new_subscription_tiered_package_with_minimum_price.rbs +4 -4
  320. data/sig/orb/models/new_subscription_tiered_price.rbs +4 -4
  321. data/sig/orb/models/new_subscription_tiered_with_minimum_price.rbs +4 -4
  322. data/sig/orb/models/new_subscription_unit_price.rbs +4 -4
  323. data/sig/orb/models/new_subscription_unit_with_percent_price.rbs +4 -4
  324. data/sig/orb/models/new_subscription_unit_with_proration_price.rbs +4 -4
  325. data/sig/orb/models/plan.rbs +134 -0
  326. data/sig/orb/models/plan_create_params.rbs +836 -5728
  327. data/sig/orb/models/plan_update_params.rbs +5 -0
  328. data/sig/orb/models/plan_version.rbs +134 -0
  329. data/sig/orb/models/plans/external_plan_id_update_params.rbs +5 -0
  330. data/sig/orb/models/price.rbs +2200 -1150
  331. data/sig/orb/models/price_create_params.rbs +611 -23
  332. data/sig/orb/models/price_evaluate_multiple_params.rbs +626 -23
  333. data/sig/orb/models/price_evaluate_preview_events_params.rbs +626 -23
  334. data/sig/orb/models/subscription.rbs +124 -0
  335. data/sig/orb/models/subscription_create_params.rbs +2009 -430
  336. data/sig/orb/models/subscription_price_intervals_params.rbs +795 -23
  337. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +2009 -430
  338. data/sig/orb/models/subscription_update_params.rbs +5 -0
  339. data/sig/orb/models.rbs +2 -0
  340. data/sig/orb/resources/alerts.rbs +5 -1
  341. data/sig/orb/resources/customers.rbs +2 -0
  342. data/sig/orb/resources/licenses/external_licenses.rbs +1 -1
  343. data/sig/orb/resources/licenses/usage.rbs +2 -2
  344. data/sig/orb/resources/plans/external_plan_id.rbs +1 -0
  345. data/sig/orb/resources/plans.rbs +2 -0
  346. data/sig/orb/resources/subscriptions.rbs +3 -0
  347. metadata +6 -7
@@ -103,6 +103,7 @@ module Orb
103
103
  Orb::Price::PackageWithAllocation::OrHash,
104
104
  Orb::Price::UnitWithPercent::OrHash,
105
105
  Orb::Price::MatrixWithAllocation::OrHash,
106
+ Orb::Price::MatrixWithThresholdDiscounts::OrHash,
106
107
  Orb::Price::TieredWithProration::OrHash,
107
108
  Orb::Price::UnitWithProration::OrHash,
108
109
  Orb::Price::GroupedAllocation::OrHash,
@@ -117,6 +118,8 @@ module Orb
117
118
  Orb::Price::ScalableMatrixWithTieredPricing::OrHash,
118
119
  Orb::Price::CumulativeGroupedBulk::OrHash,
119
120
  Orb::Price::CumulativeGroupedAllocation::OrHash,
121
+ Orb::Price::DailyCreditAllowance::OrHash,
122
+ Orb::Price::MeteredAllowance::OrHash,
120
123
  Orb::Price::MinimumComposite::OrHash,
121
124
  Orb::Price::Percent::OrHash,
122
125
  Orb::Price::EventOutput::OrHash
@@ -24,6 +24,13 @@ module Orb
24
24
  sig { returns(T.nilable(T::Boolean)) }
25
25
  attr_accessor :auto_collection
26
26
 
27
+ # Determines whether invoices for this subscription will be automatically issued.
28
+ # This resolves the effective setting for the subscription: a subscription-level
29
+ # override if set, otherwise the customer-level setting, otherwise the
30
+ # account-level default.
31
+ sig { returns(T.nilable(T::Boolean)) }
32
+ attr_accessor :auto_issuance
33
+
27
34
  sig { returns(Orb::BillingCycleAnchorConfiguration) }
28
35
  attr_reader :billing_cycle_anchor_configuration
29
36
 
@@ -201,6 +208,7 @@ module Orb
201
208
  active_plan_phase_order: T.nilable(Integer),
202
209
  adjustment_intervals: T::Array[Orb::AdjustmentInterval::OrHash],
203
210
  auto_collection: T.nilable(T::Boolean),
211
+ auto_issuance: T.nilable(T::Boolean),
204
212
  billing_cycle_anchor_configuration:
205
213
  Orb::BillingCycleAnchorConfiguration::OrHash,
206
214
  billing_cycle_day: Integer,
@@ -214,7 +222,8 @@ module Orb
214
222
  T.any(
215
223
  Orb::AmountDiscountInterval::OrHash,
216
224
  Orb::PercentageDiscountInterval::OrHash,
217
- Orb::UsageDiscountInterval::OrHash
225
+ Orb::UsageDiscountInterval::OrHash,
226
+ Orb::Subscription::DiscountInterval::TieredPercentage::OrHash
218
227
  )
219
228
  ],
220
229
  end_date: T.nilable(Time),
@@ -248,6 +257,11 @@ module Orb
248
257
  # charged with the saved payment method on the due date. This property defaults to
249
258
  # the plan's behavior. If null, defaults to the customer's setting.
250
259
  auto_collection:,
260
+ # Determines whether invoices for this subscription will be automatically issued.
261
+ # This resolves the effective setting for the subscription: a subscription-level
262
+ # override if set, otherwise the customer-level setting, otherwise the
263
+ # account-level default.
264
+ auto_issuance:,
251
265
  billing_cycle_anchor_configuration:,
252
266
  # The day of the month on which the billing cycle is anchored. If the maximum
253
267
  # number of days in a month is greater than this value, the last day of the month
@@ -334,6 +348,7 @@ module Orb
334
348
  active_plan_phase_order: T.nilable(Integer),
335
349
  adjustment_intervals: T::Array[Orb::AdjustmentInterval],
336
350
  auto_collection: T.nilable(T::Boolean),
351
+ auto_issuance: T.nilable(T::Boolean),
337
352
  billing_cycle_anchor_configuration:
338
353
  Orb::BillingCycleAnchorConfiguration,
339
354
  billing_cycle_day: Integer,
@@ -375,9 +390,316 @@ module Orb
375
390
  T.any(
376
391
  Orb::AmountDiscountInterval,
377
392
  Orb::PercentageDiscountInterval,
378
- Orb::UsageDiscountInterval
393
+ Orb::UsageDiscountInterval,
394
+ Orb::Subscription::DiscountInterval::TieredPercentage
395
+ )
396
+ end
397
+
398
+ class TieredPercentage < Orb::Internal::Type::BaseModel
399
+ OrHash =
400
+ T.type_alias do
401
+ T.any(
402
+ Orb::Subscription::DiscountInterval::TieredPercentage,
403
+ Orb::Internal::AnyHash
404
+ )
405
+ end
406
+
407
+ # The price interval ids that this discount interval applies to.
408
+ sig { returns(T::Array[String]) }
409
+ attr_accessor :applies_to_price_interval_ids
410
+
411
+ sig { returns(Symbol) }
412
+ attr_accessor :discount_type
413
+
414
+ # The end date of the discount interval.
415
+ sig { returns(T.nilable(Time)) }
416
+ attr_accessor :end_date
417
+
418
+ # The filters that determine which prices this discount interval applies to.
419
+ sig do
420
+ returns(
421
+ T::Array[
422
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter
423
+ ]
424
+ )
425
+ end
426
+ attr_accessor :filters
427
+
428
+ # The start date of the discount interval.
429
+ sig { returns(Time) }
430
+ attr_accessor :start_date
431
+
432
+ # Only available if discount_type is `tiered_percentage`. The ordered, contiguous
433
+ # bands of cumulative eligible spend, each discounted at its own percentage.
434
+ sig do
435
+ returns(
436
+ T::Array[
437
+ Orb::Subscription::DiscountInterval::TieredPercentage::Tier
438
+ ]
439
+ )
440
+ end
441
+ attr_accessor :tiers
442
+
443
+ sig do
444
+ params(
445
+ applies_to_price_interval_ids: T::Array[String],
446
+ end_date: T.nilable(Time),
447
+ filters:
448
+ T::Array[
449
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::OrHash
450
+ ],
451
+ start_date: Time,
452
+ tiers:
453
+ T::Array[
454
+ Orb::Subscription::DiscountInterval::TieredPercentage::Tier::OrHash
455
+ ],
456
+ discount_type: Symbol
457
+ ).returns(T.attached_class)
458
+ end
459
+ def self.new(
460
+ # The price interval ids that this discount interval applies to.
461
+ applies_to_price_interval_ids:,
462
+ # The end date of the discount interval.
463
+ end_date:,
464
+ # The filters that determine which prices this discount interval applies to.
465
+ filters:,
466
+ # The start date of the discount interval.
467
+ start_date:,
468
+ # Only available if discount_type is `tiered_percentage`. The ordered, contiguous
469
+ # bands of cumulative eligible spend, each discounted at its own percentage.
470
+ tiers:,
471
+ discount_type: :tiered_percentage
472
+ )
473
+ end
474
+
475
+ sig do
476
+ override.returns(
477
+ {
478
+ applies_to_price_interval_ids: T::Array[String],
479
+ discount_type: Symbol,
480
+ end_date: T.nilable(Time),
481
+ filters:
482
+ T::Array[
483
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter
484
+ ],
485
+ start_date: Time,
486
+ tiers:
487
+ T::Array[
488
+ Orb::Subscription::DiscountInterval::TieredPercentage::Tier
489
+ ]
490
+ }
491
+ )
492
+ end
493
+ def to_hash
494
+ end
495
+
496
+ class Filter < Orb::Internal::Type::BaseModel
497
+ OrHash =
498
+ T.type_alias do
499
+ T.any(
500
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter,
501
+ Orb::Internal::AnyHash
502
+ )
503
+ end
504
+
505
+ # The property of the price to filter on.
506
+ sig do
507
+ returns(
508
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
509
+ )
510
+ end
511
+ attr_accessor :field
512
+
513
+ # Should prices that match the filter be included or excluded.
514
+ sig do
515
+ returns(
516
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator::TaggedSymbol
517
+ )
518
+ end
519
+ attr_accessor :operator
520
+
521
+ # The IDs or values that match this filter.
522
+ sig { returns(T::Array[String]) }
523
+ attr_accessor :values
524
+
525
+ sig do
526
+ params(
527
+ field:
528
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::OrSymbol,
529
+ operator:
530
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator::OrSymbol,
531
+ values: T::Array[String]
532
+ ).returns(T.attached_class)
533
+ end
534
+ def self.new(
535
+ # The property of the price to filter on.
536
+ field:,
537
+ # Should prices that match the filter be included or excluded.
538
+ operator:,
539
+ # The IDs or values that match this filter.
540
+ values:
541
+ )
542
+ end
543
+
544
+ sig do
545
+ override.returns(
546
+ {
547
+ field:
548
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol,
549
+ operator:
550
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator::TaggedSymbol,
551
+ values: T::Array[String]
552
+ }
553
+ )
554
+ end
555
+ def to_hash
556
+ end
557
+
558
+ # The property of the price to filter on.
559
+ module Field
560
+ extend Orb::Internal::Type::Enum
561
+
562
+ TaggedSymbol =
563
+ T.type_alias do
564
+ T.all(
565
+ Symbol,
566
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field
567
+ )
568
+ end
569
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
570
+
571
+ PRICE_ID =
572
+ T.let(
573
+ :price_id,
574
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
575
+ )
576
+ ITEM_ID =
577
+ T.let(
578
+ :item_id,
579
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
580
+ )
581
+ PRICE_TYPE =
582
+ T.let(
583
+ :price_type,
584
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
585
+ )
586
+ CURRENCY =
587
+ T.let(
588
+ :currency,
589
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
590
+ )
591
+ PRICING_UNIT_ID =
592
+ T.let(
593
+ :pricing_unit_id,
594
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
595
+ )
596
+
597
+ sig do
598
+ override.returns(
599
+ T::Array[
600
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Field::TaggedSymbol
601
+ ]
602
+ )
603
+ end
604
+ def self.values
605
+ end
606
+ end
607
+
608
+ # Should prices that match the filter be included or excluded.
609
+ module Operator
610
+ extend Orb::Internal::Type::Enum
611
+
612
+ TaggedSymbol =
613
+ T.type_alias do
614
+ T.all(
615
+ Symbol,
616
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator
617
+ )
618
+ end
619
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
620
+
621
+ INCLUDES =
622
+ T.let(
623
+ :includes,
624
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator::TaggedSymbol
625
+ )
626
+ EXCLUDES =
627
+ T.let(
628
+ :excludes,
629
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator::TaggedSymbol
630
+ )
631
+
632
+ sig do
633
+ override.returns(
634
+ T::Array[
635
+ Orb::Subscription::DiscountInterval::TieredPercentage::Filter::Operator::TaggedSymbol
636
+ ]
637
+ )
638
+ end
639
+ def self.values
640
+ end
641
+ end
642
+ end
643
+
644
+ class Tier < Orb::Internal::Type::BaseModel
645
+ OrHash =
646
+ T.type_alias do
647
+ T.any(
648
+ Orb::Subscription::DiscountInterval::TieredPercentage::Tier,
649
+ Orb::Internal::AnyHash
650
+ )
651
+ end
652
+
653
+ # Exclusive lower bound of cumulative spend for this tier.
654
+ sig { returns(Float) }
655
+ attr_accessor :lower_bound
656
+
657
+ # The percentage (between 0 and 1) discounted from spend that falls within this
658
+ # tier.
659
+ sig { returns(Float) }
660
+ attr_accessor :percentage
661
+
662
+ # Inclusive upper bound of cumulative spend for this tier; null for the final
663
+ # open-ended tier.
664
+ sig { returns(T.nilable(Float)) }
665
+ attr_accessor :upper_bound
666
+
667
+ # One band of a tiered percentage discount. Bounds are denominated in the
668
+ # discount's currency. `lower_bound` is the exclusive start of the band and
669
+ # `upper_bound` is the inclusive end; `upper_bound` is null only for the
670
+ # open-ended final tier.
671
+ sig do
672
+ params(
673
+ lower_bound: Float,
674
+ percentage: Float,
675
+ upper_bound: T.nilable(Float)
676
+ ).returns(T.attached_class)
677
+ end
678
+ def self.new(
679
+ # Exclusive lower bound of cumulative spend for this tier.
680
+ lower_bound:,
681
+ # The percentage (between 0 and 1) discounted from spend that falls within this
682
+ # tier.
683
+ percentage:,
684
+ # Inclusive upper bound of cumulative spend for this tier; null for the final
685
+ # open-ended tier.
686
+ upper_bound: nil
379
687
  )
688
+ end
689
+
690
+ sig do
691
+ override.returns(
692
+ {
693
+ lower_bound: Float,
694
+ percentage: Float,
695
+ upper_bound: T.nilable(Float)
696
+ }
697
+ )
698
+ end
699
+ def to_hash
700
+ end
380
701
  end
702
+ end
381
703
 
382
704
  sig do
383
705
  override.returns(