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
@@ -12,6 +12,10 @@ module Orb
12
12
  sig { returns(String) }
13
13
  attr_accessor :plan_id
14
14
 
15
+ # An optional user-defined description of the plan.
16
+ sig { returns(T.nilable(String)) }
17
+ attr_accessor :description
18
+
15
19
  # An optional user-defined ID for this plan resource, used throughout the system
16
20
  # as an alias for this Plan. Use this field to identify a plan by an existing
17
21
  # identifier in your system.
@@ -27,6 +31,7 @@ module Orb
27
31
  sig do
28
32
  params(
29
33
  plan_id: String,
34
+ description: T.nilable(String),
30
35
  external_plan_id: T.nilable(String),
31
36
  metadata: T.nilable(T::Hash[Symbol, T.nilable(String)]),
32
37
  request_options: Orb::RequestOptions::OrHash
@@ -34,6 +39,8 @@ module Orb
34
39
  end
35
40
  def self.new(
36
41
  plan_id:,
42
+ # An optional user-defined description of the plan.
43
+ description: nil,
37
44
  # An optional user-defined ID for this plan resource, used throughout the system
38
45
  # as an alias for this Plan. Use this field to identify a plan by an existing
39
46
  # identifier in your system.
@@ -50,6 +57,7 @@ module Orb
50
57
  override.returns(
51
58
  {
52
59
  plan_id: String,
60
+ description: T.nilable(String),
53
61
  external_plan_id: T.nilable(String),
54
62
  metadata: T.nilable(T::Hash[Symbol, T.nilable(String)]),
55
63
  request_options: Orb::RequestOptions
@@ -34,6 +34,7 @@ module Orb
34
34
  Orb::PlanPhaseUsageDiscountAdjustment::OrHash,
35
35
  Orb::PlanPhaseAmountDiscountAdjustment::OrHash,
36
36
  Orb::PlanPhasePercentageDiscountAdjustment::OrHash,
37
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::OrHash,
37
38
  Orb::PlanPhaseMinimumAdjustment::OrHash,
38
39
  Orb::PlanPhaseMaximumAdjustment::OrHash
39
40
  )
@@ -57,6 +58,7 @@ module Orb
57
58
  Orb::Price::PackageWithAllocation::OrHash,
58
59
  Orb::Price::UnitWithPercent::OrHash,
59
60
  Orb::Price::MatrixWithAllocation::OrHash,
61
+ Orb::Price::MatrixWithThresholdDiscounts::OrHash,
60
62
  Orb::Price::TieredWithProration::OrHash,
61
63
  Orb::Price::UnitWithProration::OrHash,
62
64
  Orb::Price::GroupedAllocation::OrHash,
@@ -71,6 +73,8 @@ module Orb
71
73
  Orb::Price::ScalableMatrixWithTieredPricing::OrHash,
72
74
  Orb::Price::CumulativeGroupedBulk::OrHash,
73
75
  Orb::Price::CumulativeGroupedAllocation::OrHash,
76
+ Orb::Price::DailyCreditAllowance::OrHash,
77
+ Orb::Price::MeteredAllowance::OrHash,
74
78
  Orb::Price::MinimumComposite::OrHash,
75
79
  Orb::Price::Percent::OrHash,
76
80
  Orb::Price::EventOutput::OrHash
@@ -115,11 +119,346 @@ module Orb
115
119
  Orb::PlanPhaseUsageDiscountAdjustment,
116
120
  Orb::PlanPhaseAmountDiscountAdjustment,
117
121
  Orb::PlanPhasePercentageDiscountAdjustment,
122
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount,
118
123
  Orb::PlanPhaseMinimumAdjustment,
119
124
  Orb::PlanPhaseMaximumAdjustment
120
125
  )
121
126
  end
122
127
 
128
+ class TieredPercentageDiscount < Orb::Internal::Type::BaseModel
129
+ OrHash =
130
+ T.type_alias do
131
+ T.any(
132
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount,
133
+ Orb::Internal::AnyHash
134
+ )
135
+ end
136
+
137
+ sig { returns(String) }
138
+ attr_accessor :id
139
+
140
+ sig { returns(Symbol) }
141
+ attr_accessor :adjustment_type
142
+
143
+ # The price IDs that this adjustment applies to.
144
+ sig { returns(T::Array[String]) }
145
+ attr_accessor :applies_to_price_ids
146
+
147
+ # The filters that determine which prices to apply this adjustment to.
148
+ sig do
149
+ returns(
150
+ T::Array[
151
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter
152
+ ]
153
+ )
154
+ end
155
+ attr_accessor :filters
156
+
157
+ # True for adjustments that apply to an entire invoice, false for adjustments that
158
+ # apply to only one price.
159
+ sig { returns(T::Boolean) }
160
+ attr_accessor :is_invoice_level
161
+
162
+ # The plan phase in which this adjustment is active.
163
+ sig { returns(T.nilable(Integer)) }
164
+ attr_accessor :plan_phase_order
165
+
166
+ # The reason for the adjustment.
167
+ sig { returns(T.nilable(String)) }
168
+ attr_accessor :reason
169
+
170
+ # The adjustment id this adjustment replaces. This adjustment will take the place
171
+ # of the replaced adjustment in plan version migrations.
172
+ sig { returns(T.nilable(String)) }
173
+ attr_accessor :replaces_adjustment_id
174
+
175
+ # The ordered, contiguous bands of cumulative eligible spend, each discounted at
176
+ # its own percentage (progressive fill-a-tier), applied to the prices this
177
+ # adjustment covers in a given billing period.
178
+ sig do
179
+ returns(
180
+ T::Array[
181
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Tier
182
+ ]
183
+ )
184
+ end
185
+ attr_accessor :tiers
186
+
187
+ sig do
188
+ params(
189
+ id: String,
190
+ applies_to_price_ids: T::Array[String],
191
+ filters:
192
+ T::Array[
193
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::OrHash
194
+ ],
195
+ is_invoice_level: T::Boolean,
196
+ plan_phase_order: T.nilable(Integer),
197
+ reason: T.nilable(String),
198
+ replaces_adjustment_id: T.nilable(String),
199
+ tiers:
200
+ T::Array[
201
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Tier::OrHash
202
+ ],
203
+ adjustment_type: Symbol
204
+ ).returns(T.attached_class)
205
+ end
206
+ def self.new(
207
+ id:,
208
+ # The price IDs that this adjustment applies to.
209
+ applies_to_price_ids:,
210
+ # The filters that determine which prices to apply this adjustment to.
211
+ filters:,
212
+ # True for adjustments that apply to an entire invoice, false for adjustments that
213
+ # apply to only one price.
214
+ is_invoice_level:,
215
+ # The plan phase in which this adjustment is active.
216
+ plan_phase_order:,
217
+ # The reason for the adjustment.
218
+ reason:,
219
+ # The adjustment id this adjustment replaces. This adjustment will take the place
220
+ # of the replaced adjustment in plan version migrations.
221
+ replaces_adjustment_id:,
222
+ # The ordered, contiguous bands of cumulative eligible spend, each discounted at
223
+ # its own percentage (progressive fill-a-tier), applied to the prices this
224
+ # adjustment covers in a given billing period.
225
+ tiers:,
226
+ adjustment_type: :tiered_percentage_discount
227
+ )
228
+ end
229
+
230
+ sig do
231
+ override.returns(
232
+ {
233
+ id: String,
234
+ adjustment_type: Symbol,
235
+ applies_to_price_ids: T::Array[String],
236
+ filters:
237
+ T::Array[
238
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter
239
+ ],
240
+ is_invoice_level: T::Boolean,
241
+ plan_phase_order: T.nilable(Integer),
242
+ reason: T.nilable(String),
243
+ replaces_adjustment_id: T.nilable(String),
244
+ tiers:
245
+ T::Array[
246
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Tier
247
+ ]
248
+ }
249
+ )
250
+ end
251
+ def to_hash
252
+ end
253
+
254
+ class Filter < Orb::Internal::Type::BaseModel
255
+ OrHash =
256
+ T.type_alias do
257
+ T.any(
258
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter,
259
+ Orb::Internal::AnyHash
260
+ )
261
+ end
262
+
263
+ # The property of the price to filter on.
264
+ sig do
265
+ returns(
266
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
267
+ )
268
+ end
269
+ attr_accessor :field
270
+
271
+ # Should prices that match the filter be included or excluded.
272
+ sig do
273
+ returns(
274
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
275
+ )
276
+ end
277
+ attr_accessor :operator
278
+
279
+ # The IDs or values that match this filter.
280
+ sig { returns(T::Array[String]) }
281
+ attr_accessor :values
282
+
283
+ sig do
284
+ params(
285
+ field:
286
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::OrSymbol,
287
+ operator:
288
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator::OrSymbol,
289
+ values: T::Array[String]
290
+ ).returns(T.attached_class)
291
+ end
292
+ def self.new(
293
+ # The property of the price to filter on.
294
+ field:,
295
+ # Should prices that match the filter be included or excluded.
296
+ operator:,
297
+ # The IDs or values that match this filter.
298
+ values:
299
+ )
300
+ end
301
+
302
+ sig do
303
+ override.returns(
304
+ {
305
+ field:
306
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol,
307
+ operator:
308
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol,
309
+ values: T::Array[String]
310
+ }
311
+ )
312
+ end
313
+ def to_hash
314
+ end
315
+
316
+ # The property of the price to filter on.
317
+ module Field
318
+ extend Orb::Internal::Type::Enum
319
+
320
+ TaggedSymbol =
321
+ T.type_alias do
322
+ T.all(
323
+ Symbol,
324
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field
325
+ )
326
+ end
327
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
328
+
329
+ PRICE_ID =
330
+ T.let(
331
+ :price_id,
332
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
333
+ )
334
+ ITEM_ID =
335
+ T.let(
336
+ :item_id,
337
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
338
+ )
339
+ PRICE_TYPE =
340
+ T.let(
341
+ :price_type,
342
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
343
+ )
344
+ CURRENCY =
345
+ T.let(
346
+ :currency,
347
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
348
+ )
349
+ PRICING_UNIT_ID =
350
+ T.let(
351
+ :pricing_unit_id,
352
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
353
+ )
354
+
355
+ sig do
356
+ override.returns(
357
+ T::Array[
358
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
359
+ ]
360
+ )
361
+ end
362
+ def self.values
363
+ end
364
+ end
365
+
366
+ # Should prices that match the filter be included or excluded.
367
+ module Operator
368
+ extend Orb::Internal::Type::Enum
369
+
370
+ TaggedSymbol =
371
+ T.type_alias do
372
+ T.all(
373
+ Symbol,
374
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator
375
+ )
376
+ end
377
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
378
+
379
+ INCLUDES =
380
+ T.let(
381
+ :includes,
382
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
383
+ )
384
+ EXCLUDES =
385
+ T.let(
386
+ :excludes,
387
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
388
+ )
389
+
390
+ sig do
391
+ override.returns(
392
+ T::Array[
393
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
394
+ ]
395
+ )
396
+ end
397
+ def self.values
398
+ end
399
+ end
400
+ end
401
+
402
+ class Tier < Orb::Internal::Type::BaseModel
403
+ OrHash =
404
+ T.type_alias do
405
+ T.any(
406
+ Orb::PlanVersion::Adjustment::TieredPercentageDiscount::Tier,
407
+ Orb::Internal::AnyHash
408
+ )
409
+ end
410
+
411
+ # Exclusive lower bound of cumulative spend for this tier.
412
+ sig { returns(Float) }
413
+ attr_accessor :lower_bound
414
+
415
+ # The percentage (between 0 and 1) discounted from spend that falls within this
416
+ # tier.
417
+ sig { returns(Float) }
418
+ attr_accessor :percentage
419
+
420
+ # Inclusive upper bound of cumulative spend for this tier; null for the final
421
+ # open-ended tier.
422
+ sig { returns(T.nilable(Float)) }
423
+ attr_accessor :upper_bound
424
+
425
+ # One band of a tiered percentage discount. Bounds are denominated in the
426
+ # discount's currency. `lower_bound` is the exclusive start of the band and
427
+ # `upper_bound` is the inclusive end; `upper_bound` is null only for the
428
+ # open-ended final tier.
429
+ sig do
430
+ params(
431
+ lower_bound: Float,
432
+ percentage: Float,
433
+ upper_bound: T.nilable(Float)
434
+ ).returns(T.attached_class)
435
+ end
436
+ def self.new(
437
+ # Exclusive lower bound of cumulative spend for this tier.
438
+ lower_bound:,
439
+ # The percentage (between 0 and 1) discounted from spend that falls within this
440
+ # tier.
441
+ percentage:,
442
+ # Inclusive upper bound of cumulative spend for this tier; null for the final
443
+ # open-ended tier.
444
+ upper_bound: nil
445
+ )
446
+ end
447
+
448
+ sig do
449
+ override.returns(
450
+ {
451
+ lower_bound: Float,
452
+ percentage: Float,
453
+ upper_bound: T.nilable(Float)
454
+ }
455
+ )
456
+ end
457
+ def to_hash
458
+ end
459
+ end
460
+ end
461
+
123
462
  sig do
124
463
  override.returns(T::Array[Orb::PlanVersion::Adjustment::Variants])
125
464
  end
@@ -18,6 +18,10 @@ module Orb
18
18
  sig { returns(String) }
19
19
  attr_accessor :other_external_plan_id
20
20
 
21
+ # An optional user-defined description of the plan.
22
+ sig { returns(T.nilable(String)) }
23
+ attr_accessor :description
24
+
21
25
  # An optional user-defined ID for this plan resource, used throughout the system
22
26
  # as an alias for this Plan. Use this field to identify a plan by an existing
23
27
  # identifier in your system.
@@ -33,6 +37,7 @@ module Orb
33
37
  sig do
34
38
  params(
35
39
  other_external_plan_id: String,
40
+ description: T.nilable(String),
36
41
  external_plan_id: T.nilable(String),
37
42
  metadata: T.nilable(T::Hash[Symbol, T.nilable(String)]),
38
43
  request_options: Orb::RequestOptions::OrHash
@@ -40,6 +45,8 @@ module Orb
40
45
  end
41
46
  def self.new(
42
47
  other_external_plan_id:,
48
+ # An optional user-defined description of the plan.
49
+ description: nil,
43
50
  # An optional user-defined ID for this plan resource, used throughout the system
44
51
  # as an alias for this Plan. Use this field to identify a plan by an existing
45
52
  # identifier in your system.
@@ -56,6 +63,7 @@ module Orb
56
63
  override.returns(
57
64
  {
58
65
  other_external_plan_id: String,
66
+ description: T.nilable(String),
59
67
  external_plan_id: T.nilable(String),
60
68
  metadata: T.nilable(T::Hash[Symbol, T.nilable(String)]),
61
69
  request_options: Orb::RequestOptions
@@ -12,9 +12,12 @@ module Orb
12
12
  )
13
13
  end
14
14
 
15
+ # Unique identifier for this plan version change.
15
16
  sig { returns(String) }
16
17
  attr_accessor :id
17
18
 
19
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
20
+ # when scheduled to be at the end of the current billing period.
18
21
  sig do
19
22
  returns(
20
23
  T.nilable(
@@ -24,9 +27,12 @@ module Orb
24
27
  end
25
28
  attr_accessor :effective_time
26
29
 
30
+ # The ID of the plan being migrated.
27
31
  sig { returns(String) }
28
32
  attr_accessor :plan_id
29
33
 
34
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
35
+ # 'action_needed', or 'canceled'.
30
36
  sig do
31
37
  returns(
32
38
  Orb::Models::Plans::MigrationCancelResponse::Status::TaggedSymbol
@@ -50,7 +56,18 @@ module Orb
50
56
  Orb::Models::Plans::MigrationCancelResponse::Status::OrSymbol
51
57
  ).returns(T.attached_class)
52
58
  end
53
- def self.new(id:, effective_time:, plan_id:, status:)
59
+ def self.new(
60
+ # Unique identifier for this plan version change.
61
+ id:,
62
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
63
+ # when scheduled to be at the end of the current billing period.
64
+ effective_time:,
65
+ # The ID of the plan being migrated.
66
+ plan_id:,
67
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
68
+ # 'action_needed', or 'canceled'.
69
+ status:
70
+ )
54
71
  end
55
72
 
56
73
  sig do
@@ -70,6 +87,8 @@ module Orb
70
87
  def to_hash
71
88
  end
72
89
 
90
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
91
+ # when scheduled to be at the end of the current billing period.
73
92
  module EffectiveTime
74
93
  extend Orb::Internal::Type::Union
75
94
 
@@ -108,6 +127,8 @@ module Orb
108
127
  )
109
128
  end
110
129
 
130
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
131
+ # 'action_needed', or 'canceled'.
111
132
  module Status
112
133
  extend Orb::Internal::Type::Enum
113
134
 
@@ -12,9 +12,12 @@ module Orb
12
12
  )
13
13
  end
14
14
 
15
+ # Unique identifier for this plan version change.
15
16
  sig { returns(String) }
16
17
  attr_accessor :id
17
18
 
19
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
20
+ # when scheduled to be at the end of the current billing period.
18
21
  sig do
19
22
  returns(
20
23
  T.nilable(
@@ -24,9 +27,12 @@ module Orb
24
27
  end
25
28
  attr_accessor :effective_time
26
29
 
30
+ # The ID of the plan being migrated.
27
31
  sig { returns(String) }
28
32
  attr_accessor :plan_id
29
33
 
34
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
35
+ # 'action_needed', or 'canceled'.
30
36
  sig do
31
37
  returns(
32
38
  Orb::Models::Plans::MigrationListResponse::Status::TaggedSymbol
@@ -49,7 +55,18 @@ module Orb
49
55
  status: Orb::Models::Plans::MigrationListResponse::Status::OrSymbol
50
56
  ).returns(T.attached_class)
51
57
  end
52
- def self.new(id:, effective_time:, plan_id:, status:)
58
+ def self.new(
59
+ # Unique identifier for this plan version change.
60
+ id:,
61
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
62
+ # when scheduled to be at the end of the current billing period.
63
+ effective_time:,
64
+ # The ID of the plan being migrated.
65
+ plan_id:,
66
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
67
+ # 'action_needed', or 'canceled'.
68
+ status:
69
+ )
53
70
  end
54
71
 
55
72
  sig do
@@ -69,6 +86,8 @@ module Orb
69
86
  def to_hash
70
87
  end
71
88
 
89
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
90
+ # when scheduled to be at the end of the current billing period.
72
91
  module EffectiveTime
73
92
  extend Orb::Internal::Type::Union
74
93
 
@@ -107,6 +126,8 @@ module Orb
107
126
  )
108
127
  end
109
128
 
129
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
130
+ # 'action_needed', or 'canceled'.
110
131
  module Status
111
132
  extend Orb::Internal::Type::Enum
112
133
 
@@ -12,9 +12,12 @@ module Orb
12
12
  )
13
13
  end
14
14
 
15
+ # Unique identifier for this plan version change.
15
16
  sig { returns(String) }
16
17
  attr_accessor :id
17
18
 
19
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
20
+ # when scheduled to be at the end of the current billing period.
18
21
  sig do
19
22
  returns(
20
23
  T.nilable(
@@ -24,9 +27,12 @@ module Orb
24
27
  end
25
28
  attr_accessor :effective_time
26
29
 
30
+ # The ID of the plan being migrated.
27
31
  sig { returns(String) }
28
32
  attr_accessor :plan_id
29
33
 
34
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
35
+ # 'action_needed', or 'canceled'.
30
36
  sig do
31
37
  returns(
32
38
  Orb::Models::Plans::MigrationRetrieveResponse::Status::TaggedSymbol
@@ -50,7 +56,18 @@ module Orb
50
56
  Orb::Models::Plans::MigrationRetrieveResponse::Status::OrSymbol
51
57
  ).returns(T.attached_class)
52
58
  end
53
- def self.new(id:, effective_time:, plan_id:, status:)
59
+ def self.new(
60
+ # Unique identifier for this plan version change.
61
+ id:,
62
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
63
+ # when scheduled to be at the end of the current billing period.
64
+ effective_time:,
65
+ # The ID of the plan being migrated.
66
+ plan_id:,
67
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
68
+ # 'action_needed', or 'canceled'.
69
+ status:
70
+ )
54
71
  end
55
72
 
56
73
  sig do
@@ -70,6 +87,8 @@ module Orb
70
87
  def to_hash
71
88
  end
72
89
 
90
+ # When the migration takes effect. Can be a specific date/time, or 'end_of_term'
91
+ # when scheduled to be at the end of the current billing period.
73
92
  module EffectiveTime
74
93
  extend Orb::Internal::Type::Union
75
94
 
@@ -108,6 +127,8 @@ module Orb
108
127
  )
109
128
  end
110
129
 
130
+ # Current status of the migration: 'not_started', 'in_progress', 'completed',
131
+ # 'action_needed', or 'canceled'.
111
132
  module Status
112
133
  extend Orb::Internal::Type::Enum
113
134