orb-billing 1.14.0 → 1.16.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 (351) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/orb/client.rb +14 -0
  5. data/lib/orb/internal/transport/base_client.rb +5 -0
  6. data/lib/orb/internal/type/union.rb +13 -27
  7. data/lib/orb/models/accounting_provider_config.rb +14 -3
  8. data/lib/orb/models/adjustment_interval.rb +185 -3
  9. data/lib/orb/models/alert.rb +105 -1
  10. data/lib/orb/models/alert_create_for_subscription_params.rb +120 -7
  11. data/lib/orb/models/alert_update_params.rb +113 -1
  12. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +2419 -17109
  13. data/lib/orb/models/beta_create_plan_version_params.rb +2361 -16947
  14. data/lib/orb/models/billable_metric.rb +10 -1
  15. data/lib/orb/models/changed_subscription_resources.rb +200 -10
  16. data/lib/orb/models/conversion_rate_config.rb +18 -0
  17. data/lib/orb/models/credit_block_list_invoices_response.rb +192 -1
  18. data/lib/orb/models/credit_block_retrieve_response.rb +185 -1
  19. data/lib/orb/models/customer.rb +111 -4
  20. data/lib/orb/models/customer_create_params.rb +6 -1
  21. data/lib/orb/models/customer_tax_id.rb +15 -1
  22. data/lib/orb/models/customer_update_by_external_id_params.rb +16 -2
  23. data/lib/orb/models/customer_update_params.rb +16 -2
  24. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +192 -1
  25. data/lib/orb/models/customers/credit_list_response.rb +189 -1
  26. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +4 -4
  27. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +4 -4
  28. data/lib/orb/models/dimensional_price_group.rb +1 -1
  29. data/lib/orb/models/discount.rb +145 -1
  30. data/lib/orb/models/event_ingest_params.rb +5 -2
  31. data/lib/orb/models/invoice.rb +198 -10
  32. data/lib/orb/models/invoice_create_params.rb +6 -5
  33. data/lib/orb/models/invoice_fetch_upcoming_response.rb +200 -10
  34. data/lib/orb/models/invoice_issue_summary_response.rb +9 -3
  35. data/lib/orb/models/invoice_level_discount.rb +145 -1
  36. data/lib/orb/models/invoice_line_item_create_response.rb +189 -5
  37. data/lib/orb/models/invoice_list_summary_response.rb +9 -3
  38. data/lib/orb/models/licenses/external_license_get_usage_params.rb +3 -3
  39. data/lib/orb/models/licenses/usage_get_all_usage_params.rb +3 -3
  40. data/lib/orb/models/licenses/usage_get_usage_params.rb +3 -3
  41. data/lib/orb/models/mutated_subscription.rb +169 -4
  42. data/lib/orb/models/new_allocation_price.rb +11 -1
  43. data/lib/orb/models/new_floating_bulk_price.rb +1 -3
  44. data/lib/orb/models/new_floating_bulk_with_proration_price.rb +1 -3
  45. data/lib/orb/models/new_floating_cumulative_grouped_bulk_price.rb +1 -3
  46. data/lib/orb/models/new_floating_grouped_allocation_price.rb +1 -3
  47. data/lib/orb/models/new_floating_grouped_tiered_package_price.rb +1 -3
  48. data/lib/orb/models/new_floating_grouped_tiered_price.rb +1 -3
  49. data/lib/orb/models/new_floating_grouped_with_metered_minimum_price.rb +1 -3
  50. data/lib/orb/models/new_floating_grouped_with_prorated_minimum_price.rb +1 -3
  51. data/lib/orb/models/new_floating_matrix_price.rb +1 -3
  52. data/lib/orb/models/new_floating_matrix_with_allocation_price.rb +1 -3
  53. data/lib/orb/models/new_floating_matrix_with_display_name_price.rb +1 -3
  54. data/lib/orb/models/new_floating_max_group_tiered_package_price.rb +1 -3
  55. data/lib/orb/models/new_floating_minimum_composite_price.rb +1 -3
  56. data/lib/orb/models/new_floating_package_price.rb +1 -3
  57. data/lib/orb/models/new_floating_package_with_allocation_price.rb +1 -3
  58. data/lib/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  59. data/lib/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rb +1 -3
  60. data/lib/orb/models/new_floating_threshold_total_amount_price.rb +1 -3
  61. data/lib/orb/models/new_floating_tiered_package_price.rb +1 -3
  62. data/lib/orb/models/new_floating_tiered_package_with_minimum_price.rb +1 -3
  63. data/lib/orb/models/new_floating_tiered_price.rb +1 -3
  64. data/lib/orb/models/new_floating_tiered_with_minimum_price.rb +1 -3
  65. data/lib/orb/models/new_floating_tiered_with_proration_price.rb +1 -3
  66. data/lib/orb/models/new_floating_unit_price.rb +1 -3
  67. data/lib/orb/models/new_floating_unit_with_percent_price.rb +1 -3
  68. data/lib/orb/models/new_floating_unit_with_proration_price.rb +1 -3
  69. data/lib/orb/models/new_plan_bulk_price.rb +1 -1
  70. data/lib/orb/models/new_plan_bulk_with_proration_price.rb +1 -3
  71. data/lib/orb/models/new_plan_cumulative_grouped_bulk_price.rb +1 -3
  72. data/lib/orb/models/new_plan_grouped_allocation_price.rb +1 -3
  73. data/lib/orb/models/new_plan_grouped_tiered_package_price.rb +1 -3
  74. data/lib/orb/models/new_plan_grouped_tiered_price.rb +1 -3
  75. data/lib/orb/models/new_plan_grouped_with_metered_minimum_price.rb +1 -3
  76. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +1 -3
  77. data/lib/orb/models/new_plan_matrix_price.rb +1 -5
  78. data/lib/orb/models/new_plan_matrix_with_allocation_price.rb +1 -3
  79. data/lib/orb/models/new_plan_matrix_with_display_name_price.rb +1 -3
  80. data/lib/orb/models/new_plan_max_group_tiered_package_price.rb +1 -3
  81. data/lib/orb/models/new_plan_minimum_composite_price.rb +1 -3
  82. data/lib/orb/models/new_plan_package_price.rb +1 -5
  83. data/lib/orb/models/new_plan_package_with_allocation_price.rb +1 -3
  84. data/lib/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  85. data/lib/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +1 -3
  86. data/lib/orb/models/new_plan_threshold_total_amount_price.rb +1 -3
  87. data/lib/orb/models/new_plan_tiered_package_price.rb +1 -3
  88. data/lib/orb/models/new_plan_tiered_package_with_minimum_price.rb +1 -3
  89. data/lib/orb/models/new_plan_tiered_price.rb +1 -5
  90. data/lib/orb/models/new_plan_tiered_with_minimum_price.rb +1 -3
  91. data/lib/orb/models/new_plan_unit_price.rb +1 -1
  92. data/lib/orb/models/new_plan_unit_with_percent_price.rb +1 -3
  93. data/lib/orb/models/new_plan_unit_with_proration_price.rb +1 -3
  94. data/lib/orb/models/new_subscription_bulk_price.rb +1 -3
  95. data/lib/orb/models/new_subscription_bulk_with_proration_price.rb +1 -3
  96. data/lib/orb/models/new_subscription_cumulative_grouped_bulk_price.rb +1 -3
  97. data/lib/orb/models/new_subscription_grouped_allocation_price.rb +1 -3
  98. data/lib/orb/models/new_subscription_grouped_tiered_package_price.rb +1 -3
  99. data/lib/orb/models/new_subscription_grouped_tiered_price.rb +1 -3
  100. data/lib/orb/models/new_subscription_grouped_with_metered_minimum_price.rb +1 -3
  101. data/lib/orb/models/new_subscription_grouped_with_prorated_minimum_price.rb +1 -3
  102. data/lib/orb/models/new_subscription_matrix_price.rb +1 -3
  103. data/lib/orb/models/new_subscription_matrix_with_allocation_price.rb +1 -3
  104. data/lib/orb/models/new_subscription_matrix_with_display_name_price.rb +1 -3
  105. data/lib/orb/models/new_subscription_max_group_tiered_package_price.rb +1 -3
  106. data/lib/orb/models/new_subscription_minimum_composite_price.rb +1 -3
  107. data/lib/orb/models/new_subscription_package_price.rb +1 -3
  108. data/lib/orb/models/new_subscription_package_with_allocation_price.rb +1 -3
  109. data/lib/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  110. data/lib/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rb +1 -3
  111. data/lib/orb/models/new_subscription_threshold_total_amount_price.rb +1 -3
  112. data/lib/orb/models/new_subscription_tiered_package_price.rb +1 -3
  113. data/lib/orb/models/new_subscription_tiered_package_with_minimum_price.rb +1 -3
  114. data/lib/orb/models/new_subscription_tiered_price.rb +1 -3
  115. data/lib/orb/models/new_subscription_tiered_with_minimum_price.rb +1 -3
  116. data/lib/orb/models/new_subscription_unit_price.rb +1 -3
  117. data/lib/orb/models/new_subscription_unit_with_percent_price.rb +1 -3
  118. data/lib/orb/models/new_subscription_unit_with_proration_price.rb +1 -3
  119. data/lib/orb/models/per_price_cost.rb +2 -2
  120. data/lib/orb/models/plan.rb +189 -9
  121. data/lib/orb/models/plan_create_params.rb +1047 -8228
  122. data/lib/orb/models/plan_update_params.rb +9 -1
  123. data/lib/orb/models/plan_version.rb +186 -5
  124. data/lib/orb/models/plans/external_plan_id_update_params.rb +9 -1
  125. data/lib/orb/models/plans/migration_cancel_response.rb +22 -4
  126. data/lib/orb/models/plans/migration_list_response.rb +22 -4
  127. data/lib/orb/models/plans/migration_retrieve_response.rb +22 -4
  128. data/lib/orb/models/price.rb +2614 -1268
  129. data/lib/orb/models/price_create_params.rb +866 -49
  130. data/lib/orb/models/price_evaluate_multiple_params.rb +889 -54
  131. data/lib/orb/models/price_evaluate_preview_events_params.rb +881 -46
  132. data/lib/orb/models/price_interval.rb +2 -2
  133. data/lib/orb/models/subscription.rb +168 -4
  134. data/lib/orb/models/subscription_create_params.rb +2818 -674
  135. data/lib/orb/models/subscription_price_intervals_params.rb +1098 -57
  136. data/lib/orb/models/subscription_schedule_plan_change_params.rb +2834 -687
  137. data/lib/orb/models/subscription_update_params.rb +12 -1
  138. data/lib/orb/models.rb +2 -0
  139. data/lib/orb/resources/alerts.rb +14 -3
  140. data/lib/orb/resources/customers/credits/ledger.rb +28 -14
  141. data/lib/orb/resources/customers.rb +6 -2
  142. data/lib/orb/resources/events.rb +7 -34
  143. data/lib/orb/resources/invoices.rb +6 -2
  144. data/lib/orb/resources/licenses/external_licenses.rb +1 -1
  145. data/lib/orb/resources/licenses/usage.rb +2 -2
  146. data/lib/orb/resources/metrics.rb +5 -5
  147. data/lib/orb/resources/plans/external_plan_id.rb +5 -3
  148. data/lib/orb/resources/plans.rb +9 -5
  149. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  150. data/lib/orb/resources/prices.rb +5 -5
  151. data/lib/orb/resources/subscriptions.rb +20 -3
  152. data/lib/orb/version.rb +1 -1
  153. data/lib/orb.rb +1 -0
  154. data/rbi/orb/models/accounting_provider_config.rbi +38 -5
  155. data/rbi/orb/models/adjustment_interval.rbi +336 -0
  156. data/rbi/orb/models/alert.rbi +172 -3
  157. data/rbi/orb/models/alert_create_for_subscription_params.rbi +268 -9
  158. data/rbi/orb/models/alert_update_params.rbi +208 -0
  159. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +3833 -28395
  160. data/rbi/orb/models/beta_create_plan_version_params.rbi +3833 -28363
  161. data/rbi/orb/models/billable_metric.rbi +10 -0
  162. data/rbi/orb/models/changed_subscription_resources.rbi +360 -5
  163. data/rbi/orb/models/conversion_rate_config.rbi +18 -0
  164. data/rbi/orb/models/credit_block_list_invoices_response.rbi +425 -3
  165. data/rbi/orb/models/credit_block_retrieve_response.rbi +421 -3
  166. data/rbi/orb/models/customer.rbi +190 -10
  167. data/rbi/orb/models/customer_create_params.rbi +12 -2
  168. data/rbi/orb/models/customer_tax_id.rbi +15 -1
  169. data/rbi/orb/models/customer_update_by_external_id_params.rbi +22 -2
  170. data/rbi/orb/models/customer_update_params.rbi +22 -2
  171. data/rbi/orb/models/customers/credit_list_by_external_id_response.rbi +425 -3
  172. data/rbi/orb/models/customers/credit_list_response.rbi +426 -3
  173. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +6 -6
  174. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +6 -6
  175. data/rbi/orb/models/dimensional_price_group.rbi +1 -1
  176. data/rbi/orb/models/discount.rbi +269 -1
  177. data/rbi/orb/models/event_ingest_params.rbi +4 -2
  178. data/rbi/orb/models/invoice.rbi +360 -5
  179. data/rbi/orb/models/invoice_create_params.rbi +12 -7
  180. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +360 -5
  181. data/rbi/orb/models/invoice_issue_summary_response.rbi +19 -4
  182. data/rbi/orb/models/invoice_level_discount.rbi +298 -1
  183. data/rbi/orb/models/invoice_line_item_create_response.rbi +339 -0
  184. data/rbi/orb/models/invoice_list_summary_response.rbi +19 -4
  185. data/rbi/orb/models/licenses/external_license_get_usage_params.rbi +3 -3
  186. data/rbi/orb/models/licenses/usage_get_all_usage_params.rbi +3 -3
  187. data/rbi/orb/models/licenses/usage_get_usage_params.rbi +3 -3
  188. data/rbi/orb/models/mutated_subscription.rbi +324 -2
  189. data/rbi/orb/models/new_allocation_price.rbi +12 -0
  190. data/rbi/orb/models/per_price_cost.rbi +3 -0
  191. data/rbi/orb/models/plan.rbi +339 -2
  192. data/rbi/orb/models/plan_create_params.rbi +1877 -14138
  193. data/rbi/orb/models/plan_update_params.rbi +8 -0
  194. data/rbi/orb/models/plan_version.rbi +339 -0
  195. data/rbi/orb/models/plans/external_plan_id_update_params.rbi +8 -0
  196. data/rbi/orb/models/plans/migration_cancel_response.rbi +22 -1
  197. data/rbi/orb/models/plans/migration_list_response.rbi +22 -1
  198. data/rbi/orb/models/plans/migration_retrieve_response.rbi +22 -1
  199. data/rbi/orb/models/price.rbi +4552 -2285
  200. data/rbi/orb/models/price_create_params.rbi +1540 -114
  201. data/rbi/orb/models/price_evaluate_multiple_params.rbi +1540 -114
  202. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +1540 -114
  203. data/rbi/orb/models/price_interval.rbi +3 -0
  204. data/rbi/orb/models/subscription.rbi +324 -2
  205. data/rbi/orb/models/subscription_create_params.rbi +4998 -1186
  206. data/rbi/orb/models/subscription_price_intervals_params.rbi +2127 -264
  207. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +4997 -1185
  208. data/rbi/orb/models/subscription_update_params.rbi +14 -0
  209. data/rbi/orb/models.rbi +2 -0
  210. data/rbi/orb/resources/alerts.rbi +39 -4
  211. data/rbi/orb/resources/customers/credits/ledger.rbi +28 -14
  212. data/rbi/orb/resources/customers.rbi +23 -0
  213. data/rbi/orb/resources/events.rbi +8 -35
  214. data/rbi/orb/resources/invoices.rbi +9 -3
  215. data/rbi/orb/resources/licenses/external_licenses.rbi +1 -1
  216. data/rbi/orb/resources/licenses/usage.rbi +2 -2
  217. data/rbi/orb/resources/metrics.rbi +5 -5
  218. data/rbi/orb/resources/plans/external_plan_id.rbi +5 -2
  219. data/rbi/orb/resources/plans.rbi +9 -3
  220. data/rbi/orb/resources/prices.rbi +3 -0
  221. data/rbi/orb/resources/subscriptions.rbi +29 -0
  222. data/sig/orb/models/accounting_provider_config.rbs +21 -4
  223. data/sig/orb/models/adjustment_interval.rbs +134 -0
  224. data/sig/orb/models/alert.rbs +85 -3
  225. data/sig/orb/models/alert_create_for_subscription_params.rbs +86 -4
  226. data/sig/orb/models/alert_update_params.rbs +86 -1
  227. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +1803 -11601
  228. data/sig/orb/models/beta_create_plan_version_params.rbs +1747 -11541
  229. data/sig/orb/models/billable_metric.rbs +5 -0
  230. data/sig/orb/models/changed_subscription_resources.rbs +140 -1
  231. data/sig/orb/models/conversion_rate_config.rbs +12 -0
  232. data/sig/orb/models/credit_block_list_invoices_response.rbs +142 -3
  233. data/sig/orb/models/credit_block_retrieve_response.rbs +142 -3
  234. data/sig/orb/models/customer.rbs +70 -4
  235. data/sig/orb/models/customer_create_params.rbs +2 -2
  236. data/sig/orb/models/customer_tax_id.rbs +20 -2
  237. data/sig/orb/models/customer_update_by_external_id_params.rbs +7 -2
  238. data/sig/orb/models/customer_update_params.rbs +7 -2
  239. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +142 -3
  240. data/sig/orb/models/customers/credit_list_response.rbs +142 -3
  241. data/sig/orb/models/discount.rbs +114 -0
  242. data/sig/orb/models/invoice.rbs +140 -1
  243. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +140 -1
  244. data/sig/orb/models/invoice_issue_summary_response.rbs +2 -1
  245. data/sig/orb/models/invoice_level_discount.rbs +117 -1
  246. data/sig/orb/models/invoice_line_item_create_response.rbs +134 -0
  247. data/sig/orb/models/invoice_list_summary_response.rbs +2 -1
  248. data/sig/orb/models/licenses/external_license_get_usage_params.rbs +4 -4
  249. data/sig/orb/models/licenses/usage_get_all_usage_params.rbs +4 -4
  250. data/sig/orb/models/licenses/usage_get_usage_params.rbs +4 -4
  251. data/sig/orb/models/mutated_subscription.rbs +124 -0
  252. data/sig/orb/models/new_allocation_price.rbs +5 -0
  253. data/sig/orb/models/new_floating_bulk_price.rbs +4 -4
  254. data/sig/orb/models/new_floating_bulk_with_proration_price.rbs +4 -4
  255. data/sig/orb/models/new_floating_cumulative_grouped_bulk_price.rbs +4 -4
  256. data/sig/orb/models/new_floating_grouped_allocation_price.rbs +4 -4
  257. data/sig/orb/models/new_floating_grouped_tiered_package_price.rbs +4 -4
  258. data/sig/orb/models/new_floating_grouped_tiered_price.rbs +4 -4
  259. data/sig/orb/models/new_floating_grouped_with_metered_minimum_price.rbs +4 -4
  260. data/sig/orb/models/new_floating_grouped_with_prorated_minimum_price.rbs +4 -4
  261. data/sig/orb/models/new_floating_matrix_price.rbs +4 -4
  262. data/sig/orb/models/new_floating_matrix_with_allocation_price.rbs +4 -4
  263. data/sig/orb/models/new_floating_matrix_with_display_name_price.rbs +4 -4
  264. data/sig/orb/models/new_floating_max_group_tiered_package_price.rbs +4 -4
  265. data/sig/orb/models/new_floating_minimum_composite_price.rbs +4 -4
  266. data/sig/orb/models/new_floating_package_price.rbs +4 -4
  267. data/sig/orb/models/new_floating_package_with_allocation_price.rbs +4 -4
  268. data/sig/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  269. data/sig/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  270. data/sig/orb/models/new_floating_threshold_total_amount_price.rbs +4 -4
  271. data/sig/orb/models/new_floating_tiered_package_price.rbs +4 -4
  272. data/sig/orb/models/new_floating_tiered_package_with_minimum_price.rbs +4 -4
  273. data/sig/orb/models/new_floating_tiered_price.rbs +4 -4
  274. data/sig/orb/models/new_floating_tiered_with_minimum_price.rbs +4 -4
  275. data/sig/orb/models/new_floating_tiered_with_proration_price.rbs +4 -4
  276. data/sig/orb/models/new_floating_unit_price.rbs +4 -4
  277. data/sig/orb/models/new_floating_unit_with_percent_price.rbs +4 -4
  278. data/sig/orb/models/new_floating_unit_with_proration_price.rbs +4 -4
  279. data/sig/orb/models/new_plan_bulk_price.rbs +4 -4
  280. data/sig/orb/models/new_plan_bulk_with_proration_price.rbs +4 -4
  281. data/sig/orb/models/new_plan_cumulative_grouped_bulk_price.rbs +4 -4
  282. data/sig/orb/models/new_plan_grouped_allocation_price.rbs +4 -4
  283. data/sig/orb/models/new_plan_grouped_tiered_package_price.rbs +4 -4
  284. data/sig/orb/models/new_plan_grouped_tiered_price.rbs +4 -4
  285. data/sig/orb/models/new_plan_grouped_with_metered_minimum_price.rbs +4 -4
  286. data/sig/orb/models/new_plan_grouped_with_prorated_minimum_price.rbs +4 -4
  287. data/sig/orb/models/new_plan_matrix_price.rbs +4 -4
  288. data/sig/orb/models/new_plan_matrix_with_allocation_price.rbs +4 -4
  289. data/sig/orb/models/new_plan_matrix_with_display_name_price.rbs +4 -4
  290. data/sig/orb/models/new_plan_max_group_tiered_package_price.rbs +4 -4
  291. data/sig/orb/models/new_plan_minimum_composite_price.rbs +4 -4
  292. data/sig/orb/models/new_plan_package_price.rbs +4 -4
  293. data/sig/orb/models/new_plan_package_with_allocation_price.rbs +4 -4
  294. data/sig/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  295. data/sig/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  296. data/sig/orb/models/new_plan_threshold_total_amount_price.rbs +4 -4
  297. data/sig/orb/models/new_plan_tiered_package_price.rbs +4 -4
  298. data/sig/orb/models/new_plan_tiered_package_with_minimum_price.rbs +4 -4
  299. data/sig/orb/models/new_plan_tiered_price.rbs +4 -4
  300. data/sig/orb/models/new_plan_tiered_with_minimum_price.rbs +4 -4
  301. data/sig/orb/models/new_plan_unit_price.rbs +4 -4
  302. data/sig/orb/models/new_plan_unit_with_percent_price.rbs +4 -4
  303. data/sig/orb/models/new_plan_unit_with_proration_price.rbs +4 -4
  304. data/sig/orb/models/new_subscription_bulk_price.rbs +4 -4
  305. data/sig/orb/models/new_subscription_bulk_with_proration_price.rbs +4 -4
  306. data/sig/orb/models/new_subscription_cumulative_grouped_bulk_price.rbs +4 -4
  307. data/sig/orb/models/new_subscription_grouped_allocation_price.rbs +4 -4
  308. data/sig/orb/models/new_subscription_grouped_tiered_package_price.rbs +4 -4
  309. data/sig/orb/models/new_subscription_grouped_tiered_price.rbs +4 -4
  310. data/sig/orb/models/new_subscription_grouped_with_metered_minimum_price.rbs +4 -4
  311. data/sig/orb/models/new_subscription_grouped_with_prorated_minimum_price.rbs +4 -4
  312. data/sig/orb/models/new_subscription_matrix_price.rbs +4 -4
  313. data/sig/orb/models/new_subscription_matrix_with_allocation_price.rbs +4 -4
  314. data/sig/orb/models/new_subscription_matrix_with_display_name_price.rbs +4 -4
  315. data/sig/orb/models/new_subscription_max_group_tiered_package_price.rbs +4 -4
  316. data/sig/orb/models/new_subscription_minimum_composite_price.rbs +4 -4
  317. data/sig/orb/models/new_subscription_package_price.rbs +4 -4
  318. data/sig/orb/models/new_subscription_package_with_allocation_price.rbs +4 -4
  319. data/sig/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  320. data/sig/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  321. data/sig/orb/models/new_subscription_threshold_total_amount_price.rbs +4 -4
  322. data/sig/orb/models/new_subscription_tiered_package_price.rbs +4 -4
  323. data/sig/orb/models/new_subscription_tiered_package_with_minimum_price.rbs +4 -4
  324. data/sig/orb/models/new_subscription_tiered_price.rbs +4 -4
  325. data/sig/orb/models/new_subscription_tiered_with_minimum_price.rbs +4 -4
  326. data/sig/orb/models/new_subscription_unit_price.rbs +4 -4
  327. data/sig/orb/models/new_subscription_unit_with_percent_price.rbs +4 -4
  328. data/sig/orb/models/new_subscription_unit_with_proration_price.rbs +4 -4
  329. data/sig/orb/models/plan.rbs +134 -0
  330. data/sig/orb/models/plan_create_params.rbs +836 -5728
  331. data/sig/orb/models/plan_update_params.rbs +5 -0
  332. data/sig/orb/models/plan_version.rbs +134 -0
  333. data/sig/orb/models/plans/external_plan_id_update_params.rbs +5 -0
  334. data/sig/orb/models/price.rbs +2200 -1150
  335. data/sig/orb/models/price_create_params.rbs +611 -23
  336. data/sig/orb/models/price_evaluate_multiple_params.rbs +626 -23
  337. data/sig/orb/models/price_evaluate_preview_events_params.rbs +626 -23
  338. data/sig/orb/models/subscription.rbs +124 -0
  339. data/sig/orb/models/subscription_create_params.rbs +2009 -430
  340. data/sig/orb/models/subscription_price_intervals_params.rbs +795 -23
  341. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +2009 -430
  342. data/sig/orb/models/subscription_update_params.rbs +5 -0
  343. data/sig/orb/models.rbs +2 -0
  344. data/sig/orb/resources/alerts.rbs +5 -1
  345. data/sig/orb/resources/customers.rbs +2 -0
  346. data/sig/orb/resources/licenses/external_licenses.rbs +1 -1
  347. data/sig/orb/resources/licenses/usage.rbs +2 -2
  348. data/sig/orb/resources/plans/external_plan_id.rbs +1 -0
  349. data/sig/orb/resources/plans.rbs +2 -0
  350. data/sig/orb/resources/subscriptions.rbs +3 -0
  351. metadata +6 -7
@@ -18,6 +18,18 @@ module Orb
18
18
  sig { returns(Float) }
19
19
  attr_accessor :balance
20
20
 
21
+ # How this credit block was created: `allocation` (a subscription's recurring
22
+ # credit allocation), `top_up` (an automatic balance-threshold top-up),
23
+ # `commitment` (a subscription commitment true-up rolled forward as credit), or
24
+ # `manual` (a manual credit ledger increment, including credits voided or expired
25
+ # off another block).
26
+ sig do
27
+ returns(
28
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol
29
+ )
30
+ end
31
+ attr_accessor :credit_block_source
32
+
21
33
  sig { returns(T.nilable(Time)) }
22
34
  attr_accessor :effective_date
23
35
 
@@ -49,10 +61,54 @@ module Orb
49
61
  end
50
62
  attr_accessor :status
51
63
 
64
+ # The credit allocation that funded a block. Extends the allocation resource
65
+ # serialized on prices with the catalog-item attribution of the funding price.
66
+ sig do
67
+ returns(
68
+ T.nilable(
69
+ Orb::Models::Customers::CreditListResponse::CreditAllocation
70
+ )
71
+ )
72
+ end
73
+ attr_reader :credit_allocation
74
+
75
+ sig do
76
+ params(
77
+ credit_allocation:
78
+ T.nilable(
79
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::OrHash
80
+ )
81
+ ).void
82
+ end
83
+ attr_writer :credit_allocation
84
+
85
+ # The subscription commitment whose true-up rolled forward into this credit block.
86
+ # Present only when `credit_block_source` is `commitment`.
87
+ sig do
88
+ returns(
89
+ T.nilable(
90
+ Orb::Models::Customers::CreditListResponse::CreditCommitment
91
+ )
92
+ )
93
+ end
94
+ attr_reader :credit_commitment
95
+
96
+ sig do
97
+ params(
98
+ credit_commitment:
99
+ T.nilable(
100
+ Orb::Models::Customers::CreditListResponse::CreditCommitment::OrHash
101
+ )
102
+ ).void
103
+ end
104
+ attr_writer :credit_commitment
105
+
52
106
  sig do
53
107
  params(
54
108
  id: String,
55
109
  balance: Float,
110
+ credit_block_source:
111
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::OrSymbol,
56
112
  effective_date: T.nilable(Time),
57
113
  expiry_date: T.nilable(Time),
58
114
  filters:
@@ -62,12 +118,27 @@ module Orb
62
118
  maximum_initial_balance: T.nilable(Float),
63
119
  metadata: T::Hash[Symbol, String],
64
120
  per_unit_cost_basis: T.nilable(String),
65
- status: Orb::Models::Customers::CreditListResponse::Status::OrSymbol
121
+ status:
122
+ Orb::Models::Customers::CreditListResponse::Status::OrSymbol,
123
+ credit_allocation:
124
+ T.nilable(
125
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::OrHash
126
+ ),
127
+ credit_commitment:
128
+ T.nilable(
129
+ Orb::Models::Customers::CreditListResponse::CreditCommitment::OrHash
130
+ )
66
131
  ).returns(T.attached_class)
67
132
  end
68
133
  def self.new(
69
134
  id:,
70
135
  balance:,
136
+ # How this credit block was created: `allocation` (a subscription's recurring
137
+ # credit allocation), `top_up` (an automatic balance-threshold top-up),
138
+ # `commitment` (a subscription commitment true-up rolled forward as credit), or
139
+ # `manual` (a manual credit ledger increment, including credits voided or expired
140
+ # off another block).
141
+ credit_block_source:,
71
142
  effective_date:,
72
143
  expiry_date:,
73
144
  filters:,
@@ -78,7 +149,13 @@ module Orb
78
149
  # `null`.
79
150
  metadata:,
80
151
  per_unit_cost_basis:,
81
- status:
152
+ status:,
153
+ # The credit allocation that funded a block. Extends the allocation resource
154
+ # serialized on prices with the catalog-item attribution of the funding price.
155
+ credit_allocation: nil,
156
+ # The subscription commitment whose true-up rolled forward into this credit block.
157
+ # Present only when `credit_block_source` is `commitment`.
158
+ credit_commitment: nil
82
159
  )
83
160
  end
84
161
 
@@ -87,6 +164,8 @@ module Orb
87
164
  {
88
165
  id: String,
89
166
  balance: Float,
167
+ credit_block_source:
168
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol,
90
169
  effective_date: T.nilable(Time),
91
170
  expiry_date: T.nilable(Time),
92
171
  filters:
@@ -95,13 +174,70 @@ module Orb
95
174
  metadata: T::Hash[Symbol, String],
96
175
  per_unit_cost_basis: T.nilable(String),
97
176
  status:
98
- Orb::Models::Customers::CreditListResponse::Status::TaggedSymbol
177
+ Orb::Models::Customers::CreditListResponse::Status::TaggedSymbol,
178
+ credit_allocation:
179
+ T.nilable(
180
+ Orb::Models::Customers::CreditListResponse::CreditAllocation
181
+ ),
182
+ credit_commitment:
183
+ T.nilable(
184
+ Orb::Models::Customers::CreditListResponse::CreditCommitment
185
+ )
99
186
  }
100
187
  )
101
188
  end
102
189
  def to_hash
103
190
  end
104
191
 
192
+ # How this credit block was created: `allocation` (a subscription's recurring
193
+ # credit allocation), `top_up` (an automatic balance-threshold top-up),
194
+ # `commitment` (a subscription commitment true-up rolled forward as credit), or
195
+ # `manual` (a manual credit ledger increment, including credits voided or expired
196
+ # off another block).
197
+ module CreditBlockSource
198
+ extend Orb::Internal::Type::Enum
199
+
200
+ TaggedSymbol =
201
+ T.type_alias do
202
+ T.all(
203
+ Symbol,
204
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource
205
+ )
206
+ end
207
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
208
+
209
+ ALLOCATION =
210
+ T.let(
211
+ :allocation,
212
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol
213
+ )
214
+ TOP_UP =
215
+ T.let(
216
+ :top_up,
217
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol
218
+ )
219
+ COMMITMENT =
220
+ T.let(
221
+ :commitment,
222
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol
223
+ )
224
+ MANUAL =
225
+ T.let(
226
+ :manual,
227
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol
228
+ )
229
+
230
+ sig do
231
+ override.returns(
232
+ T::Array[
233
+ Orb::Models::Customers::CreditListResponse::CreditBlockSource::TaggedSymbol
234
+ ]
235
+ )
236
+ end
237
+ def self.values
238
+ end
239
+ end
240
+
105
241
  class Filter < Orb::Internal::Type::BaseModel
106
242
  OrHash =
107
243
  T.type_alias do
@@ -261,6 +397,293 @@ module Orb
261
397
  def self.values
262
398
  end
263
399
  end
400
+
401
+ class CreditAllocation < Orb::Internal::Type::BaseModel
402
+ OrHash =
403
+ T.type_alias do
404
+ T.any(
405
+ Orb::Models::Customers::CreditListResponse::CreditAllocation,
406
+ Orb::Internal::AnyHash
407
+ )
408
+ end
409
+
410
+ sig { returns(T::Boolean) }
411
+ attr_accessor :allows_rollover
412
+
413
+ sig { returns(String) }
414
+ attr_accessor :currency
415
+
416
+ sig { returns(T.nilable(Orb::CustomExpiration)) }
417
+ attr_reader :custom_expiration
418
+
419
+ sig do
420
+ params(
421
+ custom_expiration: T.nilable(Orb::CustomExpiration::OrHash)
422
+ ).void
423
+ end
424
+ attr_writer :custom_expiration
425
+
426
+ # The ID of the catalog item this block was allocated from, derived from the
427
+ # allocation's price.
428
+ sig { returns(String) }
429
+ attr_accessor :item_id
430
+
431
+ sig do
432
+ returns(
433
+ T.nilable(
434
+ T::Array[
435
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter
436
+ ]
437
+ )
438
+ )
439
+ end
440
+ attr_reader :filters
441
+
442
+ sig do
443
+ params(
444
+ filters:
445
+ T::Array[
446
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::OrHash
447
+ ]
448
+ ).void
449
+ end
450
+ attr_writer :filters
451
+
452
+ sig { returns(T.nilable(String)) }
453
+ attr_accessor :license_type_id
454
+
455
+ # The credit allocation that funded a block. Extends the allocation resource
456
+ # serialized on prices with the catalog-item attribution of the funding price.
457
+ sig do
458
+ params(
459
+ allows_rollover: T::Boolean,
460
+ currency: String,
461
+ custom_expiration: T.nilable(Orb::CustomExpiration::OrHash),
462
+ item_id: String,
463
+ filters:
464
+ T::Array[
465
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::OrHash
466
+ ],
467
+ license_type_id: T.nilable(String)
468
+ ).returns(T.attached_class)
469
+ end
470
+ def self.new(
471
+ allows_rollover:,
472
+ currency:,
473
+ custom_expiration:,
474
+ # The ID of the catalog item this block was allocated from, derived from the
475
+ # allocation's price.
476
+ item_id:,
477
+ filters: nil,
478
+ license_type_id: nil
479
+ )
480
+ end
481
+
482
+ sig do
483
+ override.returns(
484
+ {
485
+ allows_rollover: T::Boolean,
486
+ currency: String,
487
+ custom_expiration: T.nilable(Orb::CustomExpiration),
488
+ item_id: String,
489
+ filters:
490
+ T::Array[
491
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter
492
+ ],
493
+ license_type_id: T.nilable(String)
494
+ }
495
+ )
496
+ end
497
+ def to_hash
498
+ end
499
+
500
+ class Filter < Orb::Internal::Type::BaseModel
501
+ OrHash =
502
+ T.type_alias do
503
+ T.any(
504
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter,
505
+ Orb::Internal::AnyHash
506
+ )
507
+ end
508
+
509
+ # The property of the price to filter on.
510
+ sig do
511
+ returns(
512
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
513
+ )
514
+ end
515
+ attr_accessor :field
516
+
517
+ # Should prices that match the filter be included or excluded.
518
+ sig do
519
+ returns(
520
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator::TaggedSymbol
521
+ )
522
+ end
523
+ attr_accessor :operator
524
+
525
+ # The IDs or values that match this filter.
526
+ sig { returns(T::Array[String]) }
527
+ attr_accessor :values
528
+
529
+ sig do
530
+ params(
531
+ field:
532
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::OrSymbol,
533
+ operator:
534
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator::OrSymbol,
535
+ values: T::Array[String]
536
+ ).returns(T.attached_class)
537
+ end
538
+ def self.new(
539
+ # The property of the price to filter on.
540
+ field:,
541
+ # Should prices that match the filter be included or excluded.
542
+ operator:,
543
+ # The IDs or values that match this filter.
544
+ values:
545
+ )
546
+ end
547
+
548
+ sig do
549
+ override.returns(
550
+ {
551
+ field:
552
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol,
553
+ operator:
554
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator::TaggedSymbol,
555
+ values: T::Array[String]
556
+ }
557
+ )
558
+ end
559
+ def to_hash
560
+ end
561
+
562
+ # The property of the price to filter on.
563
+ module Field
564
+ extend Orb::Internal::Type::Enum
565
+
566
+ TaggedSymbol =
567
+ T.type_alias do
568
+ T.all(
569
+ Symbol,
570
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field
571
+ )
572
+ end
573
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
574
+
575
+ PRICE_ID =
576
+ T.let(
577
+ :price_id,
578
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
579
+ )
580
+ ITEM_ID =
581
+ T.let(
582
+ :item_id,
583
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
584
+ )
585
+ PRICE_TYPE =
586
+ T.let(
587
+ :price_type,
588
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
589
+ )
590
+ CURRENCY =
591
+ T.let(
592
+ :currency,
593
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
594
+ )
595
+ PRICING_UNIT_ID =
596
+ T.let(
597
+ :pricing_unit_id,
598
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
599
+ )
600
+
601
+ sig do
602
+ override.returns(
603
+ T::Array[
604
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Field::TaggedSymbol
605
+ ]
606
+ )
607
+ end
608
+ def self.values
609
+ end
610
+ end
611
+
612
+ # Should prices that match the filter be included or excluded.
613
+ module Operator
614
+ extend Orb::Internal::Type::Enum
615
+
616
+ TaggedSymbol =
617
+ T.type_alias do
618
+ T.all(
619
+ Symbol,
620
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator
621
+ )
622
+ end
623
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
624
+
625
+ INCLUDES =
626
+ T.let(
627
+ :includes,
628
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator::TaggedSymbol
629
+ )
630
+ EXCLUDES =
631
+ T.let(
632
+ :excludes,
633
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator::TaggedSymbol
634
+ )
635
+
636
+ sig do
637
+ override.returns(
638
+ T::Array[
639
+ Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::Operator::TaggedSymbol
640
+ ]
641
+ )
642
+ end
643
+ def self.values
644
+ end
645
+ end
646
+ end
647
+ end
648
+
649
+ class CreditCommitment < Orb::Internal::Type::BaseModel
650
+ OrHash =
651
+ T.type_alias do
652
+ T.any(
653
+ Orb::Models::Customers::CreditListResponse::CreditCommitment,
654
+ Orb::Internal::AnyHash
655
+ )
656
+ end
657
+
658
+ # The ID of the subscription commitment this block was rolled forward from.
659
+ sig { returns(String) }
660
+ attr_accessor :id
661
+
662
+ # The subscription the commitment belongs to.
663
+ sig { returns(T.nilable(String)) }
664
+ attr_accessor :subscription_id
665
+
666
+ # The subscription commitment whose true-up rolled forward into this credit block.
667
+ # Present only when `credit_block_source` is `commitment`.
668
+ sig do
669
+ params(id: String, subscription_id: T.nilable(String)).returns(
670
+ T.attached_class
671
+ )
672
+ end
673
+ def self.new(
674
+ # The ID of the subscription commitment this block was rolled forward from.
675
+ id:,
676
+ # The subscription the commitment belongs to.
677
+ subscription_id: nil
678
+ )
679
+ end
680
+
681
+ sig do
682
+ override.returns({ id: String, subscription_id: T.nilable(String) })
683
+ end
684
+ def to_hash
685
+ end
686
+ end
264
687
  end
265
688
  end
266
689
  end
@@ -653,9 +653,9 @@ module Orb
653
653
  sig { returns(Symbol) }
654
654
  attr_accessor :entry_type
655
655
 
656
- # A future date (specified in YYYY-MM-DD format) used for expiration change,
657
- # denoting when credits transferred (as part of a partial block expiration) should
658
- # expire.
656
+ # A date (specified in YYYY-MM-DD format) used for expiration change, denoting
657
+ # when credits transferred (as part of a partial block expiration) should expire.
658
+ # This date must be on or after the effective date of the credit block.
659
659
  sig { returns(Date) }
660
660
  attr_accessor :target_expiry_date
661
661
 
@@ -703,9 +703,9 @@ module Orb
703
703
  ).returns(T.attached_class)
704
704
  end
705
705
  def self.new(
706
- # A future date (specified in YYYY-MM-DD format) used for expiration change,
707
- # denoting when credits transferred (as part of a partial block expiration) should
708
- # expire.
706
+ # A date (specified in YYYY-MM-DD format) used for expiration change, denoting
707
+ # when credits transferred (as part of a partial block expiration) should expire.
708
+ # This date must be on or after the effective date of the credit block.
709
709
  target_expiry_date:,
710
710
  # The number of credits to effect. Note that this is required for increment,
711
711
  # decrement, void, or undo operations.
@@ -653,9 +653,9 @@ module Orb
653
653
  sig { returns(Symbol) }
654
654
  attr_accessor :entry_type
655
655
 
656
- # A future date (specified in YYYY-MM-DD format) used for expiration change,
657
- # denoting when credits transferred (as part of a partial block expiration) should
658
- # expire.
656
+ # A date (specified in YYYY-MM-DD format) used for expiration change, denoting
657
+ # when credits transferred (as part of a partial block expiration) should expire.
658
+ # This date must be on or after the effective date of the credit block.
659
659
  sig { returns(Date) }
660
660
  attr_accessor :target_expiry_date
661
661
 
@@ -703,9 +703,9 @@ module Orb
703
703
  ).returns(T.attached_class)
704
704
  end
705
705
  def self.new(
706
- # A future date (specified in YYYY-MM-DD format) used for expiration change,
707
- # denoting when credits transferred (as part of a partial block expiration) should
708
- # expire.
706
+ # A date (specified in YYYY-MM-DD format) used for expiration change, denoting
707
+ # when credits transferred (as part of a partial block expiration) should expire.
708
+ # This date must be on or after the effective date of the credit block.
709
709
  target_expiry_date:,
710
710
  # The number of credits to effect. Note that this is required for increment,
711
711
  # decrement, void, or undo operations.
@@ -37,7 +37,7 @@ module Orb
37
37
  attr_accessor :name
38
38
 
39
39
  # A dimensional price group is used to partition the result of a billable metric
40
- # by a set of dimensions. Prices in a price group must specify the parition used
40
+ # by a set of dimensions. Prices in a price group must specify the partition used
41
41
  # to derive their usage.
42
42
  sig do
43
43
  params(