metronome-sdk 3.7.0 → 3.9.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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
  5. data/lib/metronome_sdk/models/commit.rb +10 -1
  6. data/lib/metronome_sdk/models/contract.rb +46 -16
  7. data/lib/metronome_sdk/models/contract_v2.rb +645 -16
  8. data/lib/metronome_sdk/models/contract_without_amendments.rb +178 -4
  9. data/lib/metronome_sdk/models/credit.rb +10 -1
  10. data/lib/metronome_sdk/models/override.rb +7 -1
  11. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +10 -2
  12. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +3 -1
  13. data/lib/metronome_sdk/models/subscription.rb +90 -2
  14. data/lib/metronome_sdk/models/v1/alert_create_params.rb +127 -1
  15. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +17 -4
  16. data/lib/metronome_sdk/models/v1/contract_create_params.rb +290 -10
  17. data/lib/metronome_sdk/models/v1/contract_create_response.rb +243 -17
  18. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rb +88 -0
  19. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rb +62 -0
  20. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +10 -1
  21. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +127 -1
  22. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +130 -3
  23. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +10 -1
  24. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
  25. data/lib/metronome_sdk/models/v1/package_create_params.rb +279 -10
  26. data/lib/metronome_sdk/models/v1/package_list_response.rb +264 -7
  27. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +264 -7
  28. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +517 -9
  29. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +456 -8
  30. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +456 -8
  31. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
  32. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +4 -0
  33. data/lib/metronome_sdk/resources/v1/contracts.rb +68 -1
  34. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +4 -2
  35. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +3 -1
  36. data/lib/metronome_sdk/resources/v1/dashboards.rb +7 -2
  37. data/lib/metronome_sdk/version.rb +1 -1
  38. data/lib/metronome_sdk.rb +2 -0
  39. data/rbi/metronome_sdk/models/commit.rbi +13 -0
  40. data/rbi/metronome_sdk/models/contract.rbi +47 -22
  41. data/rbi/metronome_sdk/models/contract_v2.rbi +1472 -96
  42. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +463 -0
  43. data/rbi/metronome_sdk/models/credit.rbi +13 -0
  44. data/rbi/metronome_sdk/models/override.rbi +9 -0
  45. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +11 -1
  46. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +4 -0
  47. data/rbi/metronome_sdk/models/subscription.rbi +212 -3
  48. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +373 -0
  49. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +27 -6
  50. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +719 -9
  51. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +523 -32
  52. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbi +112 -0
  53. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbi +119 -0
  54. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +13 -0
  55. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +360 -0
  56. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +379 -2
  57. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +13 -0
  58. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
  59. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +706 -9
  60. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +693 -3
  61. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +693 -3
  62. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1372 -69
  63. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +1204 -67
  64. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1204 -67
  65. data/rbi/metronome_sdk/resources/v1/alerts.rbi +8 -0
  66. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +4 -0
  67. data/rbi/metronome_sdk/resources/v1/contracts.rbi +70 -0
  68. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +8 -1
  69. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
  70. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +7 -2
  71. data/sig/metronome_sdk/models/commit.rbs +7 -0
  72. data/sig/metronome_sdk/models/contract.rbs +22 -11
  73. data/sig/metronome_sdk/models/contract_v2.rbs +559 -8
  74. data/sig/metronome_sdk/models/contract_without_amendments.rbs +169 -2
  75. data/sig/metronome_sdk/models/credit.rbs +7 -0
  76. data/sig/metronome_sdk/models/override.rbs +7 -0
  77. data/sig/metronome_sdk/models/subscription.rbs +88 -3
  78. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +144 -0
  79. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +7 -0
  80. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +278 -5
  81. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +197 -17
  82. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbs +63 -0
  83. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbs +59 -0
  84. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +7 -0
  85. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +141 -0
  86. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +150 -0
  87. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +8 -1
  88. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
  89. data/sig/metronome_sdk/models/v1/package_create_params.rbs +271 -5
  90. data/sig/metronome_sdk/models/v1/package_list_response.rbs +265 -5
  91. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +263 -5
  92. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +472 -7
  93. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +428 -5
  94. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +427 -5
  95. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
  96. data/sig/metronome_sdk/resources/v1/contracts.rbs +13 -0
  97. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
  98. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
  99. metadata +8 -2
@@ -366,37 +366,52 @@ module MetronomeSDK
366
366
  type customer_billing_provider_configuration =
367
367
  {
368
368
  id: String,
369
+ archived_at: Time?,
369
370
  billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
370
- delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
371
+ configuration: ::Hash[Symbol, top],
372
+ customer_id: String,
373
+ delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method,
374
+ delivery_method_configuration: ::Hash[Symbol, top],
375
+ delivery_method_id: String
371
376
  }
372
377
 
373
378
  class CustomerBillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
374
- attr_reader id: String?
379
+ attr_accessor id: String
380
+
381
+ attr_accessor archived_at: Time?
375
382
 
376
- def id=: (String) -> String
383
+ attr_accessor billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider
377
384
 
378
- attr_reader billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider?
385
+ attr_accessor configuration: ::Hash[Symbol, top]
379
386
 
380
- def billing_provider=: (
381
- MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider
382
- ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider
387
+ attr_accessor customer_id: String
383
388
 
384
- attr_reader delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method?
389
+ attr_accessor delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
385
390
 
386
- def delivery_method=: (
387
- MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
388
- ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
391
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
392
+
393
+ attr_accessor delivery_method_id: String
389
394
 
390
395
  def initialize: (
391
- ?id: String,
392
- ?billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
393
- ?delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
396
+ id: String,
397
+ archived_at: Time?,
398
+ billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
399
+ configuration: ::Hash[Symbol, top],
400
+ customer_id: String,
401
+ delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method,
402
+ delivery_method_configuration: ::Hash[Symbol, top],
403
+ delivery_method_id: String
394
404
  ) -> void
395
405
 
396
406
  def to_hash: -> {
397
407
  id: String,
408
+ archived_at: Time?,
398
409
  billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
399
- delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
410
+ configuration: ::Hash[Symbol, top],
411
+ customer_id: String,
412
+ delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method,
413
+ delivery_method_configuration: ::Hash[Symbol, top],
414
+ delivery_method_id: String
400
415
  }
401
416
 
402
417
  type billing_provider =
@@ -484,6 +499,7 @@ module MetronomeSDK
484
499
  name: String,
485
500
  netsuite_sales_order_id: String,
486
501
  proration: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::proration,
502
+ proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding?,
487
503
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::recurrence_frequency,
488
504
  rollover_fraction: Float,
489
505
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -553,6 +569,8 @@ module MetronomeSDK
553
569
  MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::proration
554
570
  ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::proration
555
571
 
572
+ attr_accessor proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding?
573
+
556
574
  attr_reader recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::recurrence_frequency?
557
575
 
558
576
  def recurrence_frequency=: (
@@ -593,6 +611,7 @@ module MetronomeSDK
593
611
  ?name: String,
594
612
  ?netsuite_sales_order_id: String,
595
613
  ?proration: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::proration,
614
+ ?proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding?,
596
615
  ?recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::recurrence_frequency,
597
616
  ?rollover_fraction: Float,
598
617
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -617,6 +636,7 @@ module MetronomeSDK
617
636
  name: String,
618
637
  netsuite_sales_order_id: String,
619
638
  proration: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::proration,
639
+ proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding?,
620
640
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::recurrence_frequency,
621
641
  rollover_fraction: Float,
622
642
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -753,8 +773,106 @@ module MetronomeSDK
753
773
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::proration]
754
774
  end
755
775
 
776
+ type proration_rounding =
777
+ {
778
+ access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
779
+ invoice: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
780
+ }
781
+
782
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
783
+ attr_reader access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access?
784
+
785
+ def access=: (
786
+ MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access
787
+ ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access
788
+
789
+ attr_reader invoice: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice?
790
+
791
+ def invoice=: (
792
+ MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
793
+ ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
794
+
795
+ def initialize: (
796
+ ?access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
797
+ ?invoice: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
798
+ ) -> void
799
+
800
+ def to_hash: -> {
801
+ access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
802
+ invoice: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
803
+ }
804
+
805
+ type access =
806
+ {
807
+ decimal_places: Float,
808
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::rounding_method
809
+ }
810
+
811
+ class Access < MetronomeSDK::Internal::Type::BaseModel
812
+ attr_accessor decimal_places: Float
813
+
814
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::rounding_method
815
+
816
+ def initialize: (
817
+ decimal_places: Float,
818
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::rounding_method
819
+ ) -> void
820
+
821
+ def to_hash: -> {
822
+ decimal_places: Float,
823
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::rounding_method
824
+ }
825
+
826
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
827
+
828
+ module RoundingMethod
829
+ extend MetronomeSDK::Internal::Type::Enum
830
+
831
+ HALF_UP: :HALF_UP
832
+ FLOOR: :FLOOR
833
+ CEILING: :CEILING
834
+
835
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::rounding_method]
836
+ end
837
+ end
838
+
839
+ type invoice =
840
+ {
841
+ decimal_places: Float,
842
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::rounding_method
843
+ }
844
+
845
+ class Invoice < MetronomeSDK::Internal::Type::BaseModel
846
+ attr_accessor decimal_places: Float
847
+
848
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::rounding_method
849
+
850
+ def initialize: (
851
+ decimal_places: Float,
852
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::rounding_method
853
+ ) -> void
854
+
855
+ def to_hash: -> {
856
+ decimal_places: Float,
857
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::rounding_method
858
+ }
859
+
860
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
861
+
862
+ module RoundingMethod
863
+ extend MetronomeSDK::Internal::Type::Enum
864
+
865
+ HALF_UP: :HALF_UP
866
+ FLOOR: :FLOOR
867
+ CEILING: :CEILING
868
+
869
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::rounding_method]
870
+ end
871
+ end
872
+ end
873
+
756
874
  type recurrence_frequency =
757
- :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
875
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
758
876
 
759
877
  module RecurrenceFrequency
760
878
  extend MetronomeSDK::Internal::Type::Enum
@@ -763,6 +881,7 @@ module MetronomeSDK
763
881
  QUARTERLY: :QUARTERLY
764
882
  ANNUAL: :ANNUAL
765
883
  WEEKLY: :WEEKLY
884
+ DAILY: :DAILY
766
885
 
767
886
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::recurrence_frequency]
768
887
  end
@@ -786,6 +905,7 @@ module MetronomeSDK
786
905
  name: String,
787
906
  netsuite_sales_order_id: String,
788
907
  proration: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::proration,
908
+ proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding?,
789
909
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::recurrence_frequency,
790
910
  rollover_fraction: Float,
791
911
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -849,6 +969,8 @@ module MetronomeSDK
849
969
  MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::proration
850
970
  ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::proration
851
971
 
972
+ attr_accessor proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding?
973
+
852
974
  attr_reader recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::recurrence_frequency?
853
975
 
854
976
  def recurrence_frequency=: (
@@ -888,6 +1010,7 @@ module MetronomeSDK
888
1010
  ?name: String,
889
1011
  ?netsuite_sales_order_id: String,
890
1012
  ?proration: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::proration,
1013
+ ?proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding?,
891
1014
  ?recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::recurrence_frequency,
892
1015
  ?rollover_fraction: Float,
893
1016
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -911,6 +1034,7 @@ module MetronomeSDK
911
1034
  name: String,
912
1035
  netsuite_sales_order_id: String,
913
1036
  proration: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::proration,
1037
+ proration_rounding: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding?,
914
1038
  recurrence_frequency: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::recurrence_frequency,
915
1039
  rollover_fraction: Float,
916
1040
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1024,8 +1148,63 @@ module MetronomeSDK
1024
1148
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::proration]
1025
1149
  end
1026
1150
 
1151
+ type proration_rounding =
1152
+ {
1153
+ access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
1154
+ }
1155
+
1156
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
1157
+ attr_reader access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access?
1158
+
1159
+ def access=: (
1160
+ MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
1161
+ ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
1162
+
1163
+ def initialize: (
1164
+ ?access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
1165
+ ) -> void
1166
+
1167
+ def to_hash: -> {
1168
+ access: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
1169
+ }
1170
+
1171
+ type access =
1172
+ {
1173
+ decimal_places: Float,
1174
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::rounding_method
1175
+ }
1176
+
1177
+ class Access < MetronomeSDK::Internal::Type::BaseModel
1178
+ attr_accessor decimal_places: Float
1179
+
1180
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::rounding_method
1181
+
1182
+ def initialize: (
1183
+ decimal_places: Float,
1184
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::rounding_method
1185
+ ) -> void
1186
+
1187
+ def to_hash: -> {
1188
+ decimal_places: Float,
1189
+ rounding_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::rounding_method
1190
+ }
1191
+
1192
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1193
+
1194
+ module RoundingMethod
1195
+ extend MetronomeSDK::Internal::Type::Enum
1196
+
1197
+ HALF_UP: :HALF_UP
1198
+ FLOOR: :FLOOR
1199
+ CEILING: :CEILING
1200
+
1201
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::rounding_method]
1202
+ end
1203
+ end
1204
+ end
1205
+
1027
1206
  type recurrence_frequency =
1028
- :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1207
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
1029
1208
 
1030
1209
  module RecurrenceFrequency
1031
1210
  extend MetronomeSDK::Internal::Type::Enum
@@ -1034,6 +1213,7 @@ module MetronomeSDK
1034
1213
  QUARTERLY: :QUARTERLY
1035
1214
  ANNUAL: :ANNUAL
1036
1215
  WEEKLY: :WEEKLY
1216
+ DAILY: :DAILY
1037
1217
 
1038
1218
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::recurrence_frequency]
1039
1219
  end
@@ -0,0 +1,63 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type contract_get_subscription_seats_history_params =
5
+ {
6
+ contract_id: String,
7
+ customer_id: String,
8
+ subscription_id: String,
9
+ covering_date: Time?,
10
+ cursor: String?,
11
+ ending_before: Time?,
12
+ limit: Integer?,
13
+ starting_at: Time?
14
+ }
15
+ & MetronomeSDK::Internal::Type::request_parameters
16
+
17
+ class ContractGetSubscriptionSeatsHistoryParams < MetronomeSDK::Internal::Type::BaseModel
18
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
19
+ include MetronomeSDK::Internal::Type::RequestParameters
20
+
21
+ attr_accessor contract_id: String
22
+
23
+ attr_accessor customer_id: String
24
+
25
+ attr_accessor subscription_id: String
26
+
27
+ attr_accessor covering_date: Time?
28
+
29
+ attr_accessor cursor: String?
30
+
31
+ attr_accessor ending_before: Time?
32
+
33
+ attr_accessor limit: Integer?
34
+
35
+ attr_accessor starting_at: Time?
36
+
37
+ def initialize: (
38
+ contract_id: String,
39
+ customer_id: String,
40
+ subscription_id: String,
41
+ ?covering_date: Time?,
42
+ ?cursor: String?,
43
+ ?ending_before: Time?,
44
+ ?limit: Integer?,
45
+ ?starting_at: Time?,
46
+ ?request_options: MetronomeSDK::request_opts
47
+ ) -> void
48
+
49
+ def to_hash: -> {
50
+ contract_id: String,
51
+ customer_id: String,
52
+ subscription_id: String,
53
+ covering_date: Time?,
54
+ cursor: String?,
55
+ ending_before: Time?,
56
+ limit: Integer?,
57
+ starting_at: Time?,
58
+ request_options: MetronomeSDK::RequestOptions
59
+ }
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,59 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ module V1
4
+ type contract_get_subscription_seats_history_response =
5
+ {
6
+ data: ::Array[MetronomeSDK::Models::V1::ContractGetSubscriptionSeatsHistoryResponse::Data],
7
+ next_page: String?
8
+ }
9
+
10
+ class ContractGetSubscriptionSeatsHistoryResponse < MetronomeSDK::Internal::Type::BaseModel
11
+ attr_accessor data: ::Array[MetronomeSDK::Models::V1::ContractGetSubscriptionSeatsHistoryResponse::Data]
12
+
13
+ attr_accessor next_page: String?
14
+
15
+ def initialize: (
16
+ data: ::Array[MetronomeSDK::Models::V1::ContractGetSubscriptionSeatsHistoryResponse::Data],
17
+ next_page: String?
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ data: ::Array[MetronomeSDK::Models::V1::ContractGetSubscriptionSeatsHistoryResponse::Data],
22
+ next_page: String?
23
+ }
24
+
25
+ type data =
26
+ {
27
+ assigned_seat_ids: ::Array[String],
28
+ ending_before: Time?,
29
+ starting_at: Time,
30
+ total_quantity: Integer
31
+ }
32
+
33
+ class Data < MetronomeSDK::Internal::Type::BaseModel
34
+ attr_accessor assigned_seat_ids: ::Array[String]
35
+
36
+ attr_accessor ending_before: Time?
37
+
38
+ attr_accessor starting_at: Time
39
+
40
+ attr_accessor total_quantity: Integer
41
+
42
+ def initialize: (
43
+ assigned_seat_ids: ::Array[String],
44
+ ending_before: Time?,
45
+ starting_at: Time,
46
+ total_quantity: Integer
47
+ ) -> void
48
+
49
+ def to_hash: -> {
50
+ assigned_seat_ids: ::Array[String],
51
+ ending_before: Time?,
52
+ starting_at: Time,
53
+ total_quantity: Integer
54
+ }
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
@@ -12,6 +12,7 @@ module MetronomeSDK
12
12
  include_ledgers: bool,
13
13
  limit: Integer,
14
14
  seat_ids: ::Array[String],
15
+ skip_missing_seat_ids: bool,
15
16
  starting_at: Time,
16
17
  subscription_ids: ::Array[String]
17
18
  }
@@ -53,6 +54,10 @@ module MetronomeSDK
53
54
 
54
55
  def seat_ids=: (::Array[String]) -> ::Array[String]
55
56
 
57
+ attr_reader skip_missing_seat_ids: bool?
58
+
59
+ def skip_missing_seat_ids=: (bool) -> bool
60
+
56
61
  attr_reader starting_at: Time?
57
62
 
58
63
  def starting_at=: (Time) -> Time
@@ -71,6 +76,7 @@ module MetronomeSDK
71
76
  ?include_ledgers: bool,
72
77
  ?limit: Integer,
73
78
  ?seat_ids: ::Array[String],
79
+ ?skip_missing_seat_ids: bool,
74
80
  ?starting_at: Time,
75
81
  ?subscription_ids: ::Array[String],
76
82
  ?request_options: MetronomeSDK::request_opts
@@ -86,6 +92,7 @@ module MetronomeSDK
86
92
  include_ledgers: bool,
87
93
  limit: Integer,
88
94
  seat_ids: ::Array[String],
95
+ skip_missing_seat_ids: bool,
89
96
  starting_at: Time,
90
97
  subscription_ids: ::Array[String],
91
98
  request_options: MetronomeSDK::RequestOptions
@@ -6,6 +6,7 @@ module MetronomeSDK
6
6
  {
7
7
  alert_id: String,
8
8
  customer_id: String,
9
+ alert_specifiers: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier],
9
10
  group_values: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::GroupValue],
10
11
  plans_or_contracts: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::plans_or_contracts,
11
12
  seat_filter: MetronomeSDK::V1::Customers::AlertRetrieveParams::SeatFilter
@@ -20,6 +21,12 @@ module MetronomeSDK
20
21
 
21
22
  attr_accessor customer_id: String
22
23
 
24
+ attr_reader alert_specifiers: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier]?
25
+
26
+ def alert_specifiers=: (
27
+ ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier]
28
+ ) -> ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier]
29
+
23
30
  attr_reader group_values: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::GroupValue]?
24
31
 
25
32
  def group_values=: (
@@ -41,6 +48,7 @@ module MetronomeSDK
41
48
  def initialize: (
42
49
  alert_id: String,
43
50
  customer_id: String,
51
+ ?alert_specifiers: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier],
44
52
  ?group_values: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::GroupValue],
45
53
  ?plans_or_contracts: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::plans_or_contracts,
46
54
  ?seat_filter: MetronomeSDK::V1::Customers::AlertRetrieveParams::SeatFilter,
@@ -50,12 +58,145 @@ module MetronomeSDK
50
58
  def to_hash: -> {
51
59
  alert_id: String,
52
60
  customer_id: String,
61
+ alert_specifiers: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier],
53
62
  group_values: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::GroupValue],
54
63
  plans_or_contracts: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::plans_or_contracts,
55
64
  seat_filter: MetronomeSDK::V1::Customers::AlertRetrieveParams::SeatFilter,
56
65
  request_options: MetronomeSDK::RequestOptions
57
66
  }
58
67
 
68
+ type alert_specifier =
69
+ {
70
+ custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter],
71
+ exclude: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude]
72
+ }
73
+
74
+ class AlertSpecifier < MetronomeSDK::Internal::Type::BaseModel
75
+ attr_accessor custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter]
76
+
77
+ attr_reader exclude: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude]?
78
+
79
+ def exclude=: (
80
+ ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude]
81
+ ) -> ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude]
82
+
83
+ def initialize: (
84
+ custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter],
85
+ ?exclude: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude]
86
+ ) -> void
87
+
88
+ def to_hash: -> {
89
+ custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter],
90
+ exclude: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude]
91
+ }
92
+
93
+ type custom_field_filter =
94
+ {
95
+ entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::entity,
96
+ key: String,
97
+ value: String
98
+ }
99
+
100
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
101
+ attr_accessor entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::entity
102
+
103
+ attr_accessor key: String
104
+
105
+ attr_accessor value: String
106
+
107
+ def initialize: (
108
+ entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::entity,
109
+ key: String,
110
+ value: String
111
+ ) -> void
112
+
113
+ def to_hash: -> {
114
+ entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::entity,
115
+ key: String,
116
+ value: String
117
+ }
118
+
119
+ type entity =
120
+ :Contract | :Commit | :ContractCredit | :ContractCreditOrCommit
121
+
122
+ module Entity
123
+ extend MetronomeSDK::Internal::Type::Enum
124
+
125
+ CONTRACT: :Contract
126
+ COMMIT: :Commit
127
+ CONTRACT_CREDIT: :ContractCredit
128
+ CONTRACT_CREDIT_OR_COMMIT: :ContractCreditOrCommit
129
+
130
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::entity]
131
+ end
132
+ end
133
+
134
+ type exclude =
135
+ {
136
+ custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter]
137
+ }
138
+
139
+ class Exclude < MetronomeSDK::Internal::Type::BaseModel
140
+ attr_reader custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter]?
141
+
142
+ def custom_field_filters=: (
143
+ ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter]
144
+ ) -> ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter]
145
+
146
+ def initialize: (
147
+ ?custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter]
148
+ ) -> void
149
+
150
+ def to_hash: -> {
151
+ custom_field_filters: ::Array[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter]
152
+ }
153
+
154
+ type custom_field_filter =
155
+ {
156
+ entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::entity,
157
+ key: String,
158
+ value: String
159
+ }
160
+
161
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
162
+ attr_accessor entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::entity
163
+
164
+ attr_accessor key: String
165
+
166
+ attr_accessor value: String
167
+
168
+ def initialize: (
169
+ entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::entity,
170
+ key: String,
171
+ value: String
172
+ ) -> void
173
+
174
+ def to_hash: -> {
175
+ entity: MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::entity,
176
+ key: String,
177
+ value: String
178
+ }
179
+
180
+ type entity =
181
+ :Contract
182
+ | :Commit
183
+ | :ContractCredit
184
+ | :ContractCreditOrCommit
185
+
186
+ module Entity
187
+ extend MetronomeSDK::Internal::Type::Enum
188
+
189
+ CONTRACT: :Contract
190
+ COMMIT: :Commit
191
+ CONTRACT_CREDIT: :ContractCredit
192
+ CONTRACT_CREDIT_OR_COMMIT: :ContractCreditOrCommit
193
+
194
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::entity]
195
+ end
196
+ end
197
+ end
198
+ end
199
+
59
200
  type group_value = { key: String, value: String }
60
201
 
61
202
  class GroupValue < MetronomeSDK::Internal::Type::BaseModel