orb-billing 1.54.0 → 1.55.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 (94) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +496 -6
  5. data/lib/orb/models/beta_create_plan_version_params.rb +496 -6
  6. data/lib/orb/models/changed_subscription_resources.rb +2 -2
  7. data/lib/orb/models/credit_block_accounting_sync_failed_webhook_event.rb +4 -4
  8. data/lib/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rb +4 -4
  9. data/lib/orb/models/credit_block_list_invoices_response.rb +4 -4
  10. data/lib/orb/models/credit_block_retrieve_response.rb +4 -4
  11. data/lib/orb/models/credit_block_update_response.rb +4 -4
  12. data/lib/orb/models/customer_credit_ledger_incremented_webhook_event.rb +4 -4
  13. data/lib/orb/models/dimensional_price_groups/price_create_response.rb +2 -2
  14. data/lib/orb/models/invoice.rb +2 -2
  15. data/lib/orb/models/invoice_edited_webhook_event.rb +2 -2
  16. data/lib/orb/models/invoice_fetch_upcoming_response.rb +2 -2
  17. data/lib/orb/models/invoice_line_item_create_response.rb +2 -2
  18. data/lib/orb/models/per_price_cost.rb +2 -2
  19. data/lib/orb/models/plan.rb +2 -2
  20. data/lib/orb/models/plan_create_params.rb +246 -3
  21. data/lib/orb/models/plan_version.rb +2 -2
  22. data/lib/orb/models/price.rb +416 -1
  23. data/lib/orb/models/price_create_params.rb +231 -3
  24. data/lib/orb/models/price_edited_webhook_event.rb +2 -2
  25. data/lib/orb/models/price_evaluate_multiple_params.rb +238 -3
  26. data/lib/orb/models/price_evaluate_preview_events_params.rb +238 -3
  27. data/lib/orb/models/price_interval.rb +2 -2
  28. data/lib/orb/models/subscription_create_params.rb +495 -6
  29. data/lib/orb/models/subscription_price_intervals_params.rb +238 -3
  30. data/lib/orb/models/subscription_schedule_plan_change_params.rb +496 -6
  31. data/lib/orb/models/webhooks/credit_block_accounting_sync_failed_standard_webhook_event.rb +4 -4
  32. data/lib/orb/models/webhooks/credit_block_accounting_sync_succeeded_standard_webhook_event.rb +4 -4
  33. data/lib/orb/models/webhooks/customer_credit_ledger_incremented_standard_webhook_event.rb +4 -4
  34. data/lib/orb/models/webhooks/invoice_edited_standard_webhook_event.rb +2 -2
  35. data/lib/orb/models/webhooks/price_edited_standard_webhook_event.rb +2 -2
  36. data/lib/orb/resources/credit_blocks.rb +1 -1
  37. data/lib/orb/resources/dimensional_price_groups/prices.rb +1 -1
  38. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  39. data/lib/orb/resources/prices.rb +5 -5
  40. data/lib/orb/version.rb +1 -1
  41. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +2939 -2129
  42. data/rbi/orb/models/beta_create_plan_version_params.rbi +2937 -2127
  43. data/rbi/orb/models/changed_subscription_resources.rbi +2 -1
  44. data/rbi/orb/models/credit_block_accounting_sync_failed_webhook_event.rbi +5 -5
  45. data/rbi/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rbi +5 -5
  46. data/rbi/orb/models/credit_block_list_invoices_response.rbi +5 -5
  47. data/rbi/orb/models/credit_block_retrieve_response.rbi +5 -5
  48. data/rbi/orb/models/credit_block_update_response.rbi +5 -5
  49. data/rbi/orb/models/customer_credit_ledger_incremented_webhook_event.rbi +5 -5
  50. data/rbi/orb/models/dimensional_price_groups/price_create_response.rbi +2 -1
  51. data/rbi/orb/models/invoice.rbi +2 -1
  52. data/rbi/orb/models/invoice_edited_webhook_event.rbi +2 -1
  53. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +2 -1
  54. data/rbi/orb/models/invoice_line_item_create_response.rbi +2 -1
  55. data/rbi/orb/models/per_price_cost.rbi +2 -1
  56. data/rbi/orb/models/plan.rbi +2 -1
  57. data/rbi/orb/models/plan_create_params.rbi +409 -4
  58. data/rbi/orb/models/plan_version.rbi +2 -1
  59. data/rbi/orb/models/price.rbi +716 -1
  60. data/rbi/orb/models/price_create_params.rbi +397 -4
  61. data/rbi/orb/models/price_edited_webhook_event.rbi +2 -1
  62. data/rbi/orb/models/price_evaluate_multiple_params.rbi +397 -4
  63. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +397 -4
  64. data/rbi/orb/models/price_interval.rbi +2 -1
  65. data/rbi/orb/models/subscription_create_params.rbi +2676 -1866
  66. data/rbi/orb/models/subscription_price_intervals_params.rbi +397 -4
  67. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +2686 -1876
  68. data/rbi/orb/models/webhooks/credit_block_accounting_sync_failed_standard_webhook_event.rbi +5 -5
  69. data/rbi/orb/models/webhooks/credit_block_accounting_sync_succeeded_standard_webhook_event.rbi +5 -5
  70. data/rbi/orb/models/webhooks/customer_credit_ledger_incremented_standard_webhook_event.rbi +5 -5
  71. data/rbi/orb/models/webhooks/invoice_edited_standard_webhook_event.rbi +2 -1
  72. data/rbi/orb/models/webhooks/price_edited_standard_webhook_event.rbi +2 -1
  73. data/rbi/orb/resources/credit_blocks.rbi +1 -1
  74. data/rbi/orb/resources/prices.rbi +2 -1
  75. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +322 -0
  76. data/sig/orb/models/beta_create_plan_version_params.rbs +322 -0
  77. data/sig/orb/models/credit_block_accounting_sync_failed_webhook_event.rbs +2 -2
  78. data/sig/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rbs +2 -2
  79. data/sig/orb/models/credit_block_list_invoices_response.rbs +2 -2
  80. data/sig/orb/models/credit_block_retrieve_response.rbs +2 -2
  81. data/sig/orb/models/credit_block_update_response.rbs +2 -2
  82. data/sig/orb/models/customer_credit_ledger_incremented_webhook_event.rbs +2 -2
  83. data/sig/orb/models/plan_create_params.rbs +161 -0
  84. data/sig/orb/models/price.rbs +305 -0
  85. data/sig/orb/models/price_create_params.rbs +151 -0
  86. data/sig/orb/models/price_evaluate_multiple_params.rbs +156 -0
  87. data/sig/orb/models/price_evaluate_preview_events_params.rbs +156 -0
  88. data/sig/orb/models/subscription_create_params.rbs +322 -0
  89. data/sig/orb/models/subscription_price_intervals_params.rbs +156 -0
  90. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +322 -0
  91. data/sig/orb/models/webhooks/credit_block_accounting_sync_failed_standard_webhook_event.rbs +2 -2
  92. data/sig/orb/models/webhooks/credit_block_accounting_sync_succeeded_standard_webhook_event.rbs +2 -2
  93. data/sig/orb/models/webhooks/customer_credit_ledger_incremented_standard_webhook_event.rbs +2 -2
  94. metadata +1 -1
@@ -172,6 +172,7 @@ module Orb
172
172
  | Orb::NewFloatingMinimumCompositePrice
173
173
  | Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::Percent
174
174
  | Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::EventOutput
175
+ | Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier
175
176
 
176
177
  module Price
177
178
  extend Orb::Internal::Type::Union
@@ -1906,6 +1907,161 @@ module Orb
1906
1907
  end
1907
1908
  end
1908
1909
 
1910
+ type unit_with_multiplier =
1911
+ {
1912
+ cadence: Orb::Models::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::cadence,
1913
+ currency: String,
1914
+ item_id: String,
1915
+ model_type: :unit_with_multiplier,
1916
+ name: String,
1917
+ unit_with_multiplier_config: Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
1918
+ billable_metric_id: String?,
1919
+ billed_in_advance: bool?,
1920
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
1921
+ conversion_rate: Float?,
1922
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
1923
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
1924
+ external_price_id: String?,
1925
+ fixed_price_quantity: Float?,
1926
+ invoice_grouping_key: String?,
1927
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
1928
+ license_type_id: String?,
1929
+ metadata: ::Hash[Symbol, String?]?
1930
+ }
1931
+
1932
+ class UnitWithMultiplier < Orb::Internal::Type::BaseModel
1933
+ attr_accessor cadence: Orb::Models::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::cadence
1934
+
1935
+ attr_accessor currency: String
1936
+
1937
+ attr_accessor item_id: String
1938
+
1939
+ attr_accessor model_type: :unit_with_multiplier
1940
+
1941
+ attr_accessor name: String
1942
+
1943
+ attr_accessor unit_with_multiplier_config: Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::UnitWithMultiplierConfig
1944
+
1945
+ attr_accessor billable_metric_id: String?
1946
+
1947
+ attr_accessor billed_in_advance: bool?
1948
+
1949
+ attr_accessor billing_cycle_configuration: Orb::NewBillingCycleConfiguration?
1950
+
1951
+ attr_accessor conversion_rate: Float?
1952
+
1953
+ attr_accessor conversion_rate_config: Orb::Models::conversion_rate_config?
1954
+
1955
+ attr_accessor dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?
1956
+
1957
+ attr_accessor external_price_id: String?
1958
+
1959
+ attr_accessor fixed_price_quantity: Float?
1960
+
1961
+ attr_accessor invoice_grouping_key: String?
1962
+
1963
+ attr_accessor invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?
1964
+
1965
+ attr_accessor license_type_id: String?
1966
+
1967
+ attr_accessor metadata: ::Hash[Symbol, String?]?
1968
+
1969
+ def initialize: (
1970
+ cadence: Orb::Models::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::cadence,
1971
+ currency: String,
1972
+ item_id: String,
1973
+ name: String,
1974
+ unit_with_multiplier_config: Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
1975
+ ?billable_metric_id: String?,
1976
+ ?billed_in_advance: bool?,
1977
+ ?billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
1978
+ ?conversion_rate: Float?,
1979
+ ?conversion_rate_config: Orb::Models::conversion_rate_config?,
1980
+ ?dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
1981
+ ?external_price_id: String?,
1982
+ ?fixed_price_quantity: Float?,
1983
+ ?invoice_grouping_key: String?,
1984
+ ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
1985
+ ?license_type_id: String?,
1986
+ ?metadata: ::Hash[Symbol, String?]?,
1987
+ ?model_type: :unit_with_multiplier
1988
+ ) -> void
1989
+
1990
+ def to_hash: -> {
1991
+ cadence: Orb::Models::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::cadence,
1992
+ currency: String,
1993
+ item_id: String,
1994
+ model_type: :unit_with_multiplier,
1995
+ name: String,
1996
+ unit_with_multiplier_config: Orb::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
1997
+ billable_metric_id: String?,
1998
+ billed_in_advance: bool?,
1999
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2000
+ conversion_rate: Float?,
2001
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
2002
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2003
+ external_price_id: String?,
2004
+ fixed_price_quantity: Float?,
2005
+ invoice_grouping_key: String?,
2006
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2007
+ license_type_id: String?,
2008
+ metadata: ::Hash[Symbol, String?]?
2009
+ }
2010
+
2011
+ type cadence =
2012
+ :one_time
2013
+ | :monthly
2014
+ | :quarterly
2015
+ | :semi_annual
2016
+ | :annual
2017
+ | :custom
2018
+
2019
+ module Cadence
2020
+ extend Orb::Internal::Type::Enum
2021
+
2022
+ ONE_TIME: :one_time
2023
+ MONTHLY: :monthly
2024
+ QUARTERLY: :quarterly
2025
+ SEMI_ANNUAL: :semi_annual
2026
+ ANNUAL: :annual
2027
+ CUSTOM: :custom
2028
+
2029
+ def self?.values: -> ::Array[Orb::Models::PriceEvaluatePreviewEventsParams::PriceEvaluation::Price::UnitWithMultiplier::cadence]
2030
+ end
2031
+
2032
+ type unit_with_multiplier_config =
2033
+ {
2034
+ default_display_name: String,
2035
+ display_name_key: String,
2036
+ multiplier_key: String,
2037
+ unit_amount: String
2038
+ }
2039
+
2040
+ class UnitWithMultiplierConfig < Orb::Internal::Type::BaseModel
2041
+ attr_accessor default_display_name: String
2042
+
2043
+ attr_accessor display_name_key: String
2044
+
2045
+ attr_accessor multiplier_key: String
2046
+
2047
+ attr_accessor unit_amount: String
2048
+
2049
+ def initialize: (
2050
+ default_display_name: String,
2051
+ display_name_key: String,
2052
+ multiplier_key: String,
2053
+ unit_amount: String
2054
+ ) -> void
2055
+
2056
+ def to_hash: -> {
2057
+ default_display_name: String,
2058
+ display_name_key: String,
2059
+ multiplier_key: String,
2060
+ unit_amount: String
2061
+ }
2062
+ end
2063
+ end
2064
+
1909
2065
  def self?.variants: -> ::Array[Orb::Models::PriceEvaluatePreviewEventsParams::PriceEvaluation::price]
1910
2066
  end
1911
2067
  end
@@ -506,6 +506,7 @@ module Orb
506
506
  | Orb::NewSubscriptionMinimumCompositePrice
507
507
  | Orb::SubscriptionCreateParams::AddPrice::Price::Percent
508
508
  | Orb::SubscriptionCreateParams::AddPrice::Price::EventOutput
509
+ | Orb::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier
509
510
 
510
511
  module Price
511
512
  extend Orb::Internal::Type::Union
@@ -2453,6 +2454,166 @@ module Orb
2453
2454
  end
2454
2455
  end
2455
2456
 
2457
+ type unit_with_multiplier =
2458
+ {
2459
+ cadence: Orb::Models::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::cadence,
2460
+ item_id: String,
2461
+ model_type: :unit_with_multiplier,
2462
+ name: String,
2463
+ unit_with_multiplier_config: Orb::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
2464
+ billable_metric_id: String?,
2465
+ billed_in_advance: bool?,
2466
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2467
+ conversion_rate: Float?,
2468
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
2469
+ currency: String?,
2470
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2471
+ external_price_id: String?,
2472
+ fixed_price_quantity: Float?,
2473
+ invoice_grouping_key: String?,
2474
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2475
+ license_type_id: String?,
2476
+ metadata: ::Hash[Symbol, String?]?,
2477
+ reference_id: String?
2478
+ }
2479
+
2480
+ class UnitWithMultiplier < Orb::Internal::Type::BaseModel
2481
+ attr_accessor cadence: Orb::Models::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::cadence
2482
+
2483
+ attr_accessor item_id: String
2484
+
2485
+ attr_accessor model_type: :unit_with_multiplier
2486
+
2487
+ attr_accessor name: String
2488
+
2489
+ attr_accessor unit_with_multiplier_config: Orb::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig
2490
+
2491
+ attr_accessor billable_metric_id: String?
2492
+
2493
+ attr_accessor billed_in_advance: bool?
2494
+
2495
+ attr_accessor billing_cycle_configuration: Orb::NewBillingCycleConfiguration?
2496
+
2497
+ attr_accessor conversion_rate: Float?
2498
+
2499
+ attr_accessor conversion_rate_config: Orb::Models::conversion_rate_config?
2500
+
2501
+ attr_accessor currency: String?
2502
+
2503
+ attr_accessor dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?
2504
+
2505
+ attr_accessor external_price_id: String?
2506
+
2507
+ attr_accessor fixed_price_quantity: Float?
2508
+
2509
+ attr_accessor invoice_grouping_key: String?
2510
+
2511
+ attr_accessor invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?
2512
+
2513
+ attr_accessor license_type_id: String?
2514
+
2515
+ attr_accessor metadata: ::Hash[Symbol, String?]?
2516
+
2517
+ attr_accessor reference_id: String?
2518
+
2519
+ def initialize: (
2520
+ cadence: Orb::Models::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::cadence,
2521
+ item_id: String,
2522
+ name: String,
2523
+ unit_with_multiplier_config: Orb::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
2524
+ ?billable_metric_id: String?,
2525
+ ?billed_in_advance: bool?,
2526
+ ?billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2527
+ ?conversion_rate: Float?,
2528
+ ?conversion_rate_config: Orb::Models::conversion_rate_config?,
2529
+ ?currency: String?,
2530
+ ?dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2531
+ ?external_price_id: String?,
2532
+ ?fixed_price_quantity: Float?,
2533
+ ?invoice_grouping_key: String?,
2534
+ ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2535
+ ?license_type_id: String?,
2536
+ ?metadata: ::Hash[Symbol, String?]?,
2537
+ ?reference_id: String?,
2538
+ ?model_type: :unit_with_multiplier
2539
+ ) -> void
2540
+
2541
+ def to_hash: -> {
2542
+ cadence: Orb::Models::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::cadence,
2543
+ item_id: String,
2544
+ model_type: :unit_with_multiplier,
2545
+ name: String,
2546
+ unit_with_multiplier_config: Orb::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
2547
+ billable_metric_id: String?,
2548
+ billed_in_advance: bool?,
2549
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2550
+ conversion_rate: Float?,
2551
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
2552
+ currency: String?,
2553
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2554
+ external_price_id: String?,
2555
+ fixed_price_quantity: Float?,
2556
+ invoice_grouping_key: String?,
2557
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2558
+ license_type_id: String?,
2559
+ metadata: ::Hash[Symbol, String?]?,
2560
+ reference_id: String?
2561
+ }
2562
+
2563
+ type cadence =
2564
+ :one_time
2565
+ | :monthly
2566
+ | :quarterly
2567
+ | :semi_annual
2568
+ | :annual
2569
+ | :custom
2570
+
2571
+ module Cadence
2572
+ extend Orb::Internal::Type::Enum
2573
+
2574
+ ONE_TIME: :one_time
2575
+ MONTHLY: :monthly
2576
+ QUARTERLY: :quarterly
2577
+ SEMI_ANNUAL: :semi_annual
2578
+ ANNUAL: :annual
2579
+ CUSTOM: :custom
2580
+
2581
+ def self?.values: -> ::Array[Orb::Models::SubscriptionCreateParams::AddPrice::Price::UnitWithMultiplier::cadence]
2582
+ end
2583
+
2584
+ type unit_with_multiplier_config =
2585
+ {
2586
+ default_display_name: String,
2587
+ display_name_key: String,
2588
+ multiplier_key: String,
2589
+ unit_amount: String
2590
+ }
2591
+
2592
+ class UnitWithMultiplierConfig < Orb::Internal::Type::BaseModel
2593
+ attr_accessor default_display_name: String
2594
+
2595
+ attr_accessor display_name_key: String
2596
+
2597
+ attr_accessor multiplier_key: String
2598
+
2599
+ attr_accessor unit_amount: String
2600
+
2601
+ def initialize: (
2602
+ default_display_name: String,
2603
+ display_name_key: String,
2604
+ multiplier_key: String,
2605
+ unit_amount: String
2606
+ ) -> void
2607
+
2608
+ def to_hash: -> {
2609
+ default_display_name: String,
2610
+ display_name_key: String,
2611
+ multiplier_key: String,
2612
+ unit_amount: String
2613
+ }
2614
+ end
2615
+ end
2616
+
2456
2617
  def self?.variants: -> ::Array[Orb::Models::SubscriptionCreateParams::AddPrice::price]
2457
2618
  end
2458
2619
  end
@@ -2813,6 +2974,7 @@ module Orb
2813
2974
  | Orb::NewSubscriptionMinimumCompositePrice
2814
2975
  | Orb::SubscriptionCreateParams::ReplacePrice::Price::Percent
2815
2976
  | Orb::SubscriptionCreateParams::ReplacePrice::Price::EventOutput
2977
+ | Orb::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier
2816
2978
 
2817
2979
  module Price
2818
2980
  extend Orb::Internal::Type::Union
@@ -4760,6 +4922,166 @@ module Orb
4760
4922
  end
4761
4923
  end
4762
4924
 
4925
+ type unit_with_multiplier =
4926
+ {
4927
+ cadence: Orb::Models::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::cadence,
4928
+ item_id: String,
4929
+ model_type: :unit_with_multiplier,
4930
+ name: String,
4931
+ unit_with_multiplier_config: Orb::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
4932
+ billable_metric_id: String?,
4933
+ billed_in_advance: bool?,
4934
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
4935
+ conversion_rate: Float?,
4936
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
4937
+ currency: String?,
4938
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
4939
+ external_price_id: String?,
4940
+ fixed_price_quantity: Float?,
4941
+ invoice_grouping_key: String?,
4942
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
4943
+ license_type_id: String?,
4944
+ metadata: ::Hash[Symbol, String?]?,
4945
+ reference_id: String?
4946
+ }
4947
+
4948
+ class UnitWithMultiplier < Orb::Internal::Type::BaseModel
4949
+ attr_accessor cadence: Orb::Models::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::cadence
4950
+
4951
+ attr_accessor item_id: String
4952
+
4953
+ attr_accessor model_type: :unit_with_multiplier
4954
+
4955
+ attr_accessor name: String
4956
+
4957
+ attr_accessor unit_with_multiplier_config: Orb::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig
4958
+
4959
+ attr_accessor billable_metric_id: String?
4960
+
4961
+ attr_accessor billed_in_advance: bool?
4962
+
4963
+ attr_accessor billing_cycle_configuration: Orb::NewBillingCycleConfiguration?
4964
+
4965
+ attr_accessor conversion_rate: Float?
4966
+
4967
+ attr_accessor conversion_rate_config: Orb::Models::conversion_rate_config?
4968
+
4969
+ attr_accessor currency: String?
4970
+
4971
+ attr_accessor dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?
4972
+
4973
+ attr_accessor external_price_id: String?
4974
+
4975
+ attr_accessor fixed_price_quantity: Float?
4976
+
4977
+ attr_accessor invoice_grouping_key: String?
4978
+
4979
+ attr_accessor invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?
4980
+
4981
+ attr_accessor license_type_id: String?
4982
+
4983
+ attr_accessor metadata: ::Hash[Symbol, String?]?
4984
+
4985
+ attr_accessor reference_id: String?
4986
+
4987
+ def initialize: (
4988
+ cadence: Orb::Models::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::cadence,
4989
+ item_id: String,
4990
+ name: String,
4991
+ unit_with_multiplier_config: Orb::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
4992
+ ?billable_metric_id: String?,
4993
+ ?billed_in_advance: bool?,
4994
+ ?billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
4995
+ ?conversion_rate: Float?,
4996
+ ?conversion_rate_config: Orb::Models::conversion_rate_config?,
4997
+ ?currency: String?,
4998
+ ?dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
4999
+ ?external_price_id: String?,
5000
+ ?fixed_price_quantity: Float?,
5001
+ ?invoice_grouping_key: String?,
5002
+ ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
5003
+ ?license_type_id: String?,
5004
+ ?metadata: ::Hash[Symbol, String?]?,
5005
+ ?reference_id: String?,
5006
+ ?model_type: :unit_with_multiplier
5007
+ ) -> void
5008
+
5009
+ def to_hash: -> {
5010
+ cadence: Orb::Models::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::cadence,
5011
+ item_id: String,
5012
+ model_type: :unit_with_multiplier,
5013
+ name: String,
5014
+ unit_with_multiplier_config: Orb::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
5015
+ billable_metric_id: String?,
5016
+ billed_in_advance: bool?,
5017
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
5018
+ conversion_rate: Float?,
5019
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
5020
+ currency: String?,
5021
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
5022
+ external_price_id: String?,
5023
+ fixed_price_quantity: Float?,
5024
+ invoice_grouping_key: String?,
5025
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
5026
+ license_type_id: String?,
5027
+ metadata: ::Hash[Symbol, String?]?,
5028
+ reference_id: String?
5029
+ }
5030
+
5031
+ type cadence =
5032
+ :one_time
5033
+ | :monthly
5034
+ | :quarterly
5035
+ | :semi_annual
5036
+ | :annual
5037
+ | :custom
5038
+
5039
+ module Cadence
5040
+ extend Orb::Internal::Type::Enum
5041
+
5042
+ ONE_TIME: :one_time
5043
+ MONTHLY: :monthly
5044
+ QUARTERLY: :quarterly
5045
+ SEMI_ANNUAL: :semi_annual
5046
+ ANNUAL: :annual
5047
+ CUSTOM: :custom
5048
+
5049
+ def self?.values: -> ::Array[Orb::Models::SubscriptionCreateParams::ReplacePrice::Price::UnitWithMultiplier::cadence]
5050
+ end
5051
+
5052
+ type unit_with_multiplier_config =
5053
+ {
5054
+ default_display_name: String,
5055
+ display_name_key: String,
5056
+ multiplier_key: String,
5057
+ unit_amount: String
5058
+ }
5059
+
5060
+ class UnitWithMultiplierConfig < Orb::Internal::Type::BaseModel
5061
+ attr_accessor default_display_name: String
5062
+
5063
+ attr_accessor display_name_key: String
5064
+
5065
+ attr_accessor multiplier_key: String
5066
+
5067
+ attr_accessor unit_amount: String
5068
+
5069
+ def initialize: (
5070
+ default_display_name: String,
5071
+ display_name_key: String,
5072
+ multiplier_key: String,
5073
+ unit_amount: String
5074
+ ) -> void
5075
+
5076
+ def to_hash: -> {
5077
+ default_display_name: String,
5078
+ display_name_key: String,
5079
+ multiplier_key: String,
5080
+ unit_amount: String
5081
+ }
5082
+ end
5083
+ end
5084
+
4763
5085
  def self?.variants: -> ::Array[Orb::Models::SubscriptionCreateParams::ReplacePrice::price]
4764
5086
  end
4765
5087
  end
@@ -275,6 +275,7 @@ module Orb
275
275
  | Orb::NewFloatingMinimumCompositePrice
276
276
  | Orb::SubscriptionPriceIntervalsParams::Add::Price::Percent
277
277
  | Orb::SubscriptionPriceIntervalsParams::Add::Price::EventOutput
278
+ | Orb::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier
278
279
 
279
280
  module Price
280
281
  extend Orb::Internal::Type::Union
@@ -2009,6 +2010,161 @@ module Orb
2009
2010
  end
2010
2011
  end
2011
2012
 
2013
+ type unit_with_multiplier =
2014
+ {
2015
+ cadence: Orb::Models::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::cadence,
2016
+ currency: String,
2017
+ item_id: String,
2018
+ model_type: :unit_with_multiplier,
2019
+ name: String,
2020
+ unit_with_multiplier_config: Orb::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
2021
+ billable_metric_id: String?,
2022
+ billed_in_advance: bool?,
2023
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2024
+ conversion_rate: Float?,
2025
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
2026
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2027
+ external_price_id: String?,
2028
+ fixed_price_quantity: Float?,
2029
+ invoice_grouping_key: String?,
2030
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2031
+ license_type_id: String?,
2032
+ metadata: ::Hash[Symbol, String?]?
2033
+ }
2034
+
2035
+ class UnitWithMultiplier < Orb::Internal::Type::BaseModel
2036
+ attr_accessor cadence: Orb::Models::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::cadence
2037
+
2038
+ attr_accessor currency: String
2039
+
2040
+ attr_accessor item_id: String
2041
+
2042
+ attr_accessor model_type: :unit_with_multiplier
2043
+
2044
+ attr_accessor name: String
2045
+
2046
+ attr_accessor unit_with_multiplier_config: Orb::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::UnitWithMultiplierConfig
2047
+
2048
+ attr_accessor billable_metric_id: String?
2049
+
2050
+ attr_accessor billed_in_advance: bool?
2051
+
2052
+ attr_accessor billing_cycle_configuration: Orb::NewBillingCycleConfiguration?
2053
+
2054
+ attr_accessor conversion_rate: Float?
2055
+
2056
+ attr_accessor conversion_rate_config: Orb::Models::conversion_rate_config?
2057
+
2058
+ attr_accessor dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?
2059
+
2060
+ attr_accessor external_price_id: String?
2061
+
2062
+ attr_accessor fixed_price_quantity: Float?
2063
+
2064
+ attr_accessor invoice_grouping_key: String?
2065
+
2066
+ attr_accessor invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?
2067
+
2068
+ attr_accessor license_type_id: String?
2069
+
2070
+ attr_accessor metadata: ::Hash[Symbol, String?]?
2071
+
2072
+ def initialize: (
2073
+ cadence: Orb::Models::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::cadence,
2074
+ currency: String,
2075
+ item_id: String,
2076
+ name: String,
2077
+ unit_with_multiplier_config: Orb::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
2078
+ ?billable_metric_id: String?,
2079
+ ?billed_in_advance: bool?,
2080
+ ?billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2081
+ ?conversion_rate: Float?,
2082
+ ?conversion_rate_config: Orb::Models::conversion_rate_config?,
2083
+ ?dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2084
+ ?external_price_id: String?,
2085
+ ?fixed_price_quantity: Float?,
2086
+ ?invoice_grouping_key: String?,
2087
+ ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2088
+ ?license_type_id: String?,
2089
+ ?metadata: ::Hash[Symbol, String?]?,
2090
+ ?model_type: :unit_with_multiplier
2091
+ ) -> void
2092
+
2093
+ def to_hash: -> {
2094
+ cadence: Orb::Models::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::cadence,
2095
+ currency: String,
2096
+ item_id: String,
2097
+ model_type: :unit_with_multiplier,
2098
+ name: String,
2099
+ unit_with_multiplier_config: Orb::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::UnitWithMultiplierConfig,
2100
+ billable_metric_id: String?,
2101
+ billed_in_advance: bool?,
2102
+ billing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2103
+ conversion_rate: Float?,
2104
+ conversion_rate_config: Orb::Models::conversion_rate_config?,
2105
+ dimensional_price_configuration: Orb::NewDimensionalPriceConfiguration?,
2106
+ external_price_id: String?,
2107
+ fixed_price_quantity: Float?,
2108
+ invoice_grouping_key: String?,
2109
+ invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
2110
+ license_type_id: String?,
2111
+ metadata: ::Hash[Symbol, String?]?
2112
+ }
2113
+
2114
+ type cadence =
2115
+ :one_time
2116
+ | :monthly
2117
+ | :quarterly
2118
+ | :semi_annual
2119
+ | :annual
2120
+ | :custom
2121
+
2122
+ module Cadence
2123
+ extend Orb::Internal::Type::Enum
2124
+
2125
+ ONE_TIME: :one_time
2126
+ MONTHLY: :monthly
2127
+ QUARTERLY: :quarterly
2128
+ SEMI_ANNUAL: :semi_annual
2129
+ ANNUAL: :annual
2130
+ CUSTOM: :custom
2131
+
2132
+ def self?.values: -> ::Array[Orb::Models::SubscriptionPriceIntervalsParams::Add::Price::UnitWithMultiplier::cadence]
2133
+ end
2134
+
2135
+ type unit_with_multiplier_config =
2136
+ {
2137
+ default_display_name: String,
2138
+ display_name_key: String,
2139
+ multiplier_key: String,
2140
+ unit_amount: String
2141
+ }
2142
+
2143
+ class UnitWithMultiplierConfig < Orb::Internal::Type::BaseModel
2144
+ attr_accessor default_display_name: String
2145
+
2146
+ attr_accessor display_name_key: String
2147
+
2148
+ attr_accessor multiplier_key: String
2149
+
2150
+ attr_accessor unit_amount: String
2151
+
2152
+ def initialize: (
2153
+ default_display_name: String,
2154
+ display_name_key: String,
2155
+ multiplier_key: String,
2156
+ unit_amount: String
2157
+ ) -> void
2158
+
2159
+ def to_hash: -> {
2160
+ default_display_name: String,
2161
+ display_name_key: String,
2162
+ multiplier_key: String,
2163
+ unit_amount: String
2164
+ }
2165
+ end
2166
+ end
2167
+
2012
2168
  def self?.variants: -> ::Array[Orb::Models::SubscriptionPriceIntervalsParams::Add::price]
2013
2169
  end
2014
2170
  end