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
@@ -17,6 +17,18 @@ module Orb
17
17
  sig { returns(Float) }
18
18
  attr_accessor :balance
19
19
 
20
+ # How this credit block was created: `allocation` (a subscription's recurring
21
+ # credit allocation), `top_up` (an automatic balance-threshold top-up),
22
+ # `commitment` (a subscription commitment true-up rolled forward as credit), or
23
+ # `manual` (a manual credit ledger increment, including credits voided or expired
24
+ # off another block).
25
+ sig do
26
+ returns(
27
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol
28
+ )
29
+ end
30
+ attr_accessor :credit_block_source
31
+
20
32
  sig { returns(T.nilable(Time)) }
21
33
  attr_accessor :effective_date
22
34
 
@@ -46,11 +58,51 @@ module Orb
46
58
  end
47
59
  attr_accessor :status
48
60
 
61
+ # The credit allocation that funded a block. Extends the allocation resource
62
+ # serialized on prices with the catalog-item attribution of the funding price.
63
+ sig do
64
+ returns(
65
+ T.nilable(Orb::Models::CreditBlockRetrieveResponse::CreditAllocation)
66
+ )
67
+ end
68
+ attr_reader :credit_allocation
69
+
70
+ sig do
71
+ params(
72
+ credit_allocation:
73
+ T.nilable(
74
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::OrHash
75
+ )
76
+ ).void
77
+ end
78
+ attr_writer :credit_allocation
79
+
80
+ # The subscription commitment whose true-up rolled forward into this credit block.
81
+ # Present only when `credit_block_source` is `commitment`.
82
+ sig do
83
+ returns(
84
+ T.nilable(Orb::Models::CreditBlockRetrieveResponse::CreditCommitment)
85
+ )
86
+ end
87
+ attr_reader :credit_commitment
88
+
89
+ sig do
90
+ params(
91
+ credit_commitment:
92
+ T.nilable(
93
+ Orb::Models::CreditBlockRetrieveResponse::CreditCommitment::OrHash
94
+ )
95
+ ).void
96
+ end
97
+ attr_writer :credit_commitment
98
+
49
99
  # The Credit Block resource models prepaid credits within Orb.
50
100
  sig do
51
101
  params(
52
102
  id: String,
53
103
  balance: Float,
104
+ credit_block_source:
105
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::OrSymbol,
54
106
  effective_date: T.nilable(Time),
55
107
  expiry_date: T.nilable(Time),
56
108
  filters:
@@ -58,12 +110,26 @@ module Orb
58
110
  maximum_initial_balance: T.nilable(Float),
59
111
  metadata: T::Hash[Symbol, String],
60
112
  per_unit_cost_basis: T.nilable(String),
61
- status: Orb::Models::CreditBlockRetrieveResponse::Status::OrSymbol
113
+ status: Orb::Models::CreditBlockRetrieveResponse::Status::OrSymbol,
114
+ credit_allocation:
115
+ T.nilable(
116
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::OrHash
117
+ ),
118
+ credit_commitment:
119
+ T.nilable(
120
+ Orb::Models::CreditBlockRetrieveResponse::CreditCommitment::OrHash
121
+ )
62
122
  ).returns(T.attached_class)
63
123
  end
64
124
  def self.new(
65
125
  id:,
66
126
  balance:,
127
+ # How this credit block was created: `allocation` (a subscription's recurring
128
+ # credit allocation), `top_up` (an automatic balance-threshold top-up),
129
+ # `commitment` (a subscription commitment true-up rolled forward as credit), or
130
+ # `manual` (a manual credit ledger increment, including credits voided or expired
131
+ # off another block).
132
+ credit_block_source:,
67
133
  effective_date:,
68
134
  expiry_date:,
69
135
  filters:,
@@ -74,7 +140,13 @@ module Orb
74
140
  # `null`.
75
141
  metadata:,
76
142
  per_unit_cost_basis:,
77
- status:
143
+ status:,
144
+ # The credit allocation that funded a block. Extends the allocation resource
145
+ # serialized on prices with the catalog-item attribution of the funding price.
146
+ credit_allocation: nil,
147
+ # The subscription commitment whose true-up rolled forward into this credit block.
148
+ # Present only when `credit_block_source` is `commitment`.
149
+ credit_commitment: nil
78
150
  )
79
151
  end
80
152
 
@@ -83,6 +155,8 @@ module Orb
83
155
  {
84
156
  id: String,
85
157
  balance: Float,
158
+ credit_block_source:
159
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol,
86
160
  effective_date: T.nilable(Time),
87
161
  expiry_date: T.nilable(Time),
88
162
  filters: T::Array[Orb::Models::CreditBlockRetrieveResponse::Filter],
@@ -90,13 +164,70 @@ module Orb
90
164
  metadata: T::Hash[Symbol, String],
91
165
  per_unit_cost_basis: T.nilable(String),
92
166
  status:
93
- Orb::Models::CreditBlockRetrieveResponse::Status::TaggedSymbol
167
+ Orb::Models::CreditBlockRetrieveResponse::Status::TaggedSymbol,
168
+ credit_allocation:
169
+ T.nilable(
170
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation
171
+ ),
172
+ credit_commitment:
173
+ T.nilable(
174
+ Orb::Models::CreditBlockRetrieveResponse::CreditCommitment
175
+ )
94
176
  }
95
177
  )
96
178
  end
97
179
  def to_hash
98
180
  end
99
181
 
182
+ # How this credit block was created: `allocation` (a subscription's recurring
183
+ # credit allocation), `top_up` (an automatic balance-threshold top-up),
184
+ # `commitment` (a subscription commitment true-up rolled forward as credit), or
185
+ # `manual` (a manual credit ledger increment, including credits voided or expired
186
+ # off another block).
187
+ module CreditBlockSource
188
+ extend Orb::Internal::Type::Enum
189
+
190
+ TaggedSymbol =
191
+ T.type_alias do
192
+ T.all(
193
+ Symbol,
194
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource
195
+ )
196
+ end
197
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
198
+
199
+ ALLOCATION =
200
+ T.let(
201
+ :allocation,
202
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol
203
+ )
204
+ TOP_UP =
205
+ T.let(
206
+ :top_up,
207
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol
208
+ )
209
+ COMMITMENT =
210
+ T.let(
211
+ :commitment,
212
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol
213
+ )
214
+ MANUAL =
215
+ T.let(
216
+ :manual,
217
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol
218
+ )
219
+
220
+ sig do
221
+ override.returns(
222
+ T::Array[
223
+ Orb::Models::CreditBlockRetrieveResponse::CreditBlockSource::TaggedSymbol
224
+ ]
225
+ )
226
+ end
227
+ def self.values
228
+ end
229
+ end
230
+
100
231
  class Filter < Orb::Internal::Type::BaseModel
101
232
  OrHash =
102
233
  T.type_alias do
@@ -275,6 +406,293 @@ module Orb
275
406
  def self.values
276
407
  end
277
408
  end
409
+
410
+ class CreditAllocation < Orb::Internal::Type::BaseModel
411
+ OrHash =
412
+ T.type_alias do
413
+ T.any(
414
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation,
415
+ Orb::Internal::AnyHash
416
+ )
417
+ end
418
+
419
+ sig { returns(T::Boolean) }
420
+ attr_accessor :allows_rollover
421
+
422
+ sig { returns(String) }
423
+ attr_accessor :currency
424
+
425
+ sig { returns(T.nilable(Orb::CustomExpiration)) }
426
+ attr_reader :custom_expiration
427
+
428
+ sig do
429
+ params(
430
+ custom_expiration: T.nilable(Orb::CustomExpiration::OrHash)
431
+ ).void
432
+ end
433
+ attr_writer :custom_expiration
434
+
435
+ # The ID of the catalog item this block was allocated from, derived from the
436
+ # allocation's price.
437
+ sig { returns(String) }
438
+ attr_accessor :item_id
439
+
440
+ sig do
441
+ returns(
442
+ T.nilable(
443
+ T::Array[
444
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter
445
+ ]
446
+ )
447
+ )
448
+ end
449
+ attr_reader :filters
450
+
451
+ sig do
452
+ params(
453
+ filters:
454
+ T::Array[
455
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::OrHash
456
+ ]
457
+ ).void
458
+ end
459
+ attr_writer :filters
460
+
461
+ sig { returns(T.nilable(String)) }
462
+ attr_accessor :license_type_id
463
+
464
+ # The credit allocation that funded a block. Extends the allocation resource
465
+ # serialized on prices with the catalog-item attribution of the funding price.
466
+ sig do
467
+ params(
468
+ allows_rollover: T::Boolean,
469
+ currency: String,
470
+ custom_expiration: T.nilable(Orb::CustomExpiration::OrHash),
471
+ item_id: String,
472
+ filters:
473
+ T::Array[
474
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::OrHash
475
+ ],
476
+ license_type_id: T.nilable(String)
477
+ ).returns(T.attached_class)
478
+ end
479
+ def self.new(
480
+ allows_rollover:,
481
+ currency:,
482
+ custom_expiration:,
483
+ # The ID of the catalog item this block was allocated from, derived from the
484
+ # allocation's price.
485
+ item_id:,
486
+ filters: nil,
487
+ license_type_id: nil
488
+ )
489
+ end
490
+
491
+ sig do
492
+ override.returns(
493
+ {
494
+ allows_rollover: T::Boolean,
495
+ currency: String,
496
+ custom_expiration: T.nilable(Orb::CustomExpiration),
497
+ item_id: String,
498
+ filters:
499
+ T::Array[
500
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter
501
+ ],
502
+ license_type_id: T.nilable(String)
503
+ }
504
+ )
505
+ end
506
+ def to_hash
507
+ end
508
+
509
+ class Filter < Orb::Internal::Type::BaseModel
510
+ OrHash =
511
+ T.type_alias do
512
+ T.any(
513
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter,
514
+ Orb::Internal::AnyHash
515
+ )
516
+ end
517
+
518
+ # The property of the price to filter on.
519
+ sig do
520
+ returns(
521
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
522
+ )
523
+ end
524
+ attr_accessor :field
525
+
526
+ # Should prices that match the filter be included or excluded.
527
+ sig do
528
+ returns(
529
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator::TaggedSymbol
530
+ )
531
+ end
532
+ attr_accessor :operator
533
+
534
+ # The IDs or values that match this filter.
535
+ sig { returns(T::Array[String]) }
536
+ attr_accessor :values
537
+
538
+ sig do
539
+ params(
540
+ field:
541
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::OrSymbol,
542
+ operator:
543
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator::OrSymbol,
544
+ values: T::Array[String]
545
+ ).returns(T.attached_class)
546
+ end
547
+ def self.new(
548
+ # The property of the price to filter on.
549
+ field:,
550
+ # Should prices that match the filter be included or excluded.
551
+ operator:,
552
+ # The IDs or values that match this filter.
553
+ values:
554
+ )
555
+ end
556
+
557
+ sig do
558
+ override.returns(
559
+ {
560
+ field:
561
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol,
562
+ operator:
563
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator::TaggedSymbol,
564
+ values: T::Array[String]
565
+ }
566
+ )
567
+ end
568
+ def to_hash
569
+ end
570
+
571
+ # The property of the price to filter on.
572
+ module Field
573
+ extend Orb::Internal::Type::Enum
574
+
575
+ TaggedSymbol =
576
+ T.type_alias do
577
+ T.all(
578
+ Symbol,
579
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field
580
+ )
581
+ end
582
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
583
+
584
+ PRICE_ID =
585
+ T.let(
586
+ :price_id,
587
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
588
+ )
589
+ ITEM_ID =
590
+ T.let(
591
+ :item_id,
592
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
593
+ )
594
+ PRICE_TYPE =
595
+ T.let(
596
+ :price_type,
597
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
598
+ )
599
+ CURRENCY =
600
+ T.let(
601
+ :currency,
602
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
603
+ )
604
+ PRICING_UNIT_ID =
605
+ T.let(
606
+ :pricing_unit_id,
607
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
608
+ )
609
+
610
+ sig do
611
+ override.returns(
612
+ T::Array[
613
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Field::TaggedSymbol
614
+ ]
615
+ )
616
+ end
617
+ def self.values
618
+ end
619
+ end
620
+
621
+ # Should prices that match the filter be included or excluded.
622
+ module Operator
623
+ extend Orb::Internal::Type::Enum
624
+
625
+ TaggedSymbol =
626
+ T.type_alias do
627
+ T.all(
628
+ Symbol,
629
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator
630
+ )
631
+ end
632
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
633
+
634
+ INCLUDES =
635
+ T.let(
636
+ :includes,
637
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator::TaggedSymbol
638
+ )
639
+ EXCLUDES =
640
+ T.let(
641
+ :excludes,
642
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator::TaggedSymbol
643
+ )
644
+
645
+ sig do
646
+ override.returns(
647
+ T::Array[
648
+ Orb::Models::CreditBlockRetrieveResponse::CreditAllocation::Filter::Operator::TaggedSymbol
649
+ ]
650
+ )
651
+ end
652
+ def self.values
653
+ end
654
+ end
655
+ end
656
+ end
657
+
658
+ class CreditCommitment < Orb::Internal::Type::BaseModel
659
+ OrHash =
660
+ T.type_alias do
661
+ T.any(
662
+ Orb::Models::CreditBlockRetrieveResponse::CreditCommitment,
663
+ Orb::Internal::AnyHash
664
+ )
665
+ end
666
+
667
+ # The ID of the subscription commitment this block was rolled forward from.
668
+ sig { returns(String) }
669
+ attr_accessor :id
670
+
671
+ # The subscription the commitment belongs to.
672
+ sig { returns(T.nilable(String)) }
673
+ attr_accessor :subscription_id
674
+
675
+ # The subscription commitment whose true-up rolled forward into this credit block.
676
+ # Present only when `credit_block_source` is `commitment`.
677
+ sig do
678
+ params(id: String, subscription_id: T.nilable(String)).returns(
679
+ T.attached_class
680
+ )
681
+ end
682
+ def self.new(
683
+ # The ID of the subscription commitment this block was rolled forward from.
684
+ id:,
685
+ # The subscription the commitment belongs to.
686
+ subscription_id: nil
687
+ )
688
+ end
689
+
690
+ sig do
691
+ override.returns({ id: String, subscription_id: T.nilable(String) })
692
+ end
693
+ def to_hash
694
+ end
695
+ end
278
696
  end
279
697
  end
280
698
  end