metronome-sdk 3.6.0 → 3.7.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 +16 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/type/enum.rb +0 -25
  5. data/lib/metronome_sdk/models/commit.rb +27 -1
  6. data/lib/metronome_sdk/models/contract.rb +140 -1
  7. data/lib/metronome_sdk/models/contract_v2.rb +168 -2
  8. data/lib/metronome_sdk/models/contract_without_amendments.rb +142 -1
  9. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +105 -2
  10. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +103 -2
  11. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +33 -1
  12. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +33 -1
  13. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +29 -1
  14. data/lib/metronome_sdk/models/v1/contract_create_params.rb +146 -2
  15. data/lib/metronome_sdk/models/v1/contract_create_response.rb +1134 -3
  16. data/lib/metronome_sdk/models/v1/package_create_params.rb +115 -1
  17. data/lib/metronome_sdk/models/v1/package_list_response.rb +110 -1
  18. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +114 -1
  19. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +303 -5
  20. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3862 -3
  21. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +145 -3
  22. data/lib/metronome_sdk/resources/v1/contracts.rb +3 -1
  23. data/lib/metronome_sdk/resources/v1/packages.rb +6 -5
  24. data/lib/metronome_sdk/resources/v1.rb +0 -4
  25. data/lib/metronome_sdk/resources/v2/contracts.rb +5 -1
  26. data/lib/metronome_sdk/version.rb +1 -1
  27. data/lib/metronome_sdk.rb +0 -8
  28. data/rbi/metronome_sdk/models/commit.rbi +48 -0
  29. data/rbi/metronome_sdk/models/contract.rbi +354 -0
  30. data/rbi/metronome_sdk/models/contract_v2.rbi +409 -0
  31. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +368 -0
  32. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +289 -6
  33. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +283 -6
  34. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +78 -3
  35. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -3
  36. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +54 -0
  37. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +368 -0
  38. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +2448 -4
  39. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +310 -0
  40. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +307 -0
  41. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +307 -0
  42. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +734 -11
  43. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +8612 -4
  44. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +359 -11
  45. data/rbi/metronome_sdk/resources/v1/contracts.rbi +7 -0
  46. data/rbi/metronome_sdk/resources/v1/packages.rbi +8 -4
  47. data/rbi/metronome_sdk/resources/v1.rbi +0 -3
  48. data/rbi/metronome_sdk/resources/v2/contracts.rbi +10 -0
  49. data/sig/metronome_sdk/models/commit.rbs +19 -0
  50. data/sig/metronome_sdk/models/contract.rbs +151 -0
  51. data/sig/metronome_sdk/models/contract_v2.rbs +170 -0
  52. data/sig/metronome_sdk/models/contract_without_amendments.rbs +151 -0
  53. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +116 -6
  54. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +116 -6
  55. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +31 -3
  56. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +31 -3
  57. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +19 -0
  58. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +134 -0
  59. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +1045 -4
  60. data/sig/metronome_sdk/models/v1/package_create_params.rbs +115 -0
  61. data/sig/metronome_sdk/models/v1/package_list_response.rbs +115 -0
  62. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +115 -0
  63. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +283 -9
  64. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +3792 -4
  65. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +142 -9
  66. data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
  67. data/sig/metronome_sdk/resources/v1/packages.rbs +1 -0
  68. data/sig/metronome_sdk/resources/v1.rbs +0 -2
  69. data/sig/metronome_sdk/resources/v2/contracts.rbs +2 -0
  70. metadata +2 -26
  71. data/lib/metronome_sdk/models/v1/payment.rb +0 -196
  72. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +0 -28
  73. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +0 -18
  74. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +0 -28
  75. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +0 -18
  76. data/lib/metronome_sdk/models/v1/payment_list_params.rb +0 -53
  77. data/lib/metronome_sdk/models/v1/payment_status.rb +0 -19
  78. data/lib/metronome_sdk/resources/v1/payments.rb +0 -102
  79. data/rbi/metronome_sdk/models/v1/payment.rbi +0 -403
  80. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +0 -48
  81. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +0 -35
  82. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +0 -48
  83. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +0 -35
  84. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +0 -91
  85. data/rbi/metronome_sdk/models/v1/payment_status.rbi +0 -33
  86. data/rbi/metronome_sdk/resources/v1/payments.rbi +0 -72
  87. data/sig/metronome_sdk/models/v1/payment.rbs +0 -243
  88. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +0 -30
  89. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +0 -15
  90. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +0 -30
  91. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +0 -15
  92. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +0 -56
  93. data/sig/metronome_sdk/models/v1/payment_status.rbs +0 -19
  94. data/sig/metronome_sdk/resources/v1/payments.rbs +0 -30
@@ -3087,7 +3087,18 @@ module MetronomeSDK
3087
3087
  # @return [Float, nil]
3088
3088
  optional :threshold_amount, Float
3089
3089
 
3090
- # @!method initialize(commit: nil, custom_credit_type_id: nil, discount_configuration: nil, is_enabled: nil, payment_gate_config: nil, recharge_to_amount: nil, threshold_amount: nil)
3090
+ # @!attribute threshold_balance_specifiers
3091
+ #
3092
+ # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier>, nil]
3093
+ optional :threshold_balance_specifiers,
3094
+ -> do
3095
+ MetronomeSDK::Internal::Type::ArrayOf[
3096
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier
3097
+ ]
3098
+ end,
3099
+ nil?: true
3100
+
3101
+ # @!method initialize(commit: nil, custom_credit_type_id: nil, discount_configuration: nil, is_enabled: nil, payment_gate_config: nil, recharge_to_amount: nil, threshold_amount: nil, threshold_balance_specifiers: nil)
3091
3102
  # Some parameter documentations has been truncated, see
3092
3103
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration}
3093
3104
  # for more details.
@@ -3105,6 +3116,8 @@ module MetronomeSDK
3105
3116
  # @param recharge_to_amount [Float] Specify the amount the balance should be recharged to.
3106
3117
  #
3107
3118
  # @param threshold_amount [Float] Specify the threshold amount for the contract. Each time the contract's balance
3119
+ #
3120
+ # @param threshold_balance_specifiers [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier>, nil]
3108
3121
 
3109
3122
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration#commit
3110
3123
  class Commit < MetronomeSDK::Models::UpdateBaseThresholdCommit
@@ -3150,6 +3163,14 @@ module MetronomeSDK
3150
3163
 
3151
3164
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration#discount_configuration
3152
3165
  class DiscountConfiguration < MetronomeSDK::Internal::Type::BaseModel
3166
+ # @!attribute cap
3167
+ # Update the discount cap. Set to null to remove an existing cap.
3168
+ #
3169
+ # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration::Cap, nil]
3170
+ optional :cap,
3171
+ -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration::Cap },
3172
+ nil?: true
3173
+
3153
3174
  # @!attribute payment_fraction
3154
3175
  # The fraction of the original amount that the customer pays after applying the
3155
3176
  # discount. Set to null to remove the discount fraction. For example, 0.85 means
@@ -3158,12 +3179,101 @@ module MetronomeSDK
3158
3179
  # @return [Float, nil]
3159
3180
  optional :payment_fraction, Float, nil?: true
3160
3181
 
3161
- # @!method initialize(payment_fraction: nil)
3182
+ # @!method initialize(cap: nil, payment_fraction: nil)
3162
3183
  # Some parameter documentations has been truncated, see
3163
3184
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration}
3164
3185
  # for more details.
3165
3186
  #
3187
+ # @param cap [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration::Cap, nil] Update the discount cap. Set to null to remove an existing cap.
3188
+ #
3166
3189
  # @param payment_fraction [Float, nil] The fraction of the original amount that the customer pays after applying the di
3190
+
3191
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration#cap
3192
+ class Cap < MetronomeSDK::Internal::Type::BaseModel
3193
+ # @!attribute amount
3194
+ # Accumulated spend ceiling above which the discount stops applying.
3195
+ #
3196
+ # @return [Float]
3197
+ required :amount, Float
3198
+
3199
+ # @!attribute spend_tracker_alias
3200
+ # Alias of the spend tracker this cap is measured against.
3201
+ #
3202
+ # @return [String]
3203
+ required :spend_tracker_alias, String
3204
+
3205
+ # @!method initialize(amount:, spend_tracker_alias:)
3206
+ # Update the discount cap. Set to null to remove an existing cap.
3207
+ #
3208
+ # @param amount [Float] Accumulated spend ceiling above which the discount stops applying.
3209
+ #
3210
+ # @param spend_tracker_alias [String] Alias of the spend tracker this cap is measured against.
3211
+ end
3212
+ end
3213
+
3214
+ class ThresholdBalanceSpecifier < MetronomeSDK::Internal::Type::BaseModel
3215
+ # @!attribute exclude
3216
+ #
3217
+ # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude>]
3218
+ required :exclude,
3219
+ -> do
3220
+ MetronomeSDK::Internal::Type::ArrayOf[
3221
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude
3222
+ ]
3223
+ end
3224
+
3225
+ # @!method initialize(exclude:)
3226
+ # @param exclude [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude>]
3227
+
3228
+ class Exclude < MetronomeSDK::Internal::Type::BaseModel
3229
+ # @!attribute custom_field_filters
3230
+ #
3231
+ # @return [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter>]
3232
+ required :custom_field_filters,
3233
+ -> do
3234
+ MetronomeSDK::Internal::Type::ArrayOf[
3235
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter
3236
+ ]
3237
+ end
3238
+
3239
+ # @!method initialize(custom_field_filters:)
3240
+ # @param custom_field_filters [Array<MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter>]
3241
+
3242
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
3243
+ # @!attribute entity
3244
+ #
3245
+ # @return [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter::Entity]
3246
+ required :entity,
3247
+ enum: -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter::Entity }
3248
+
3249
+ # @!attribute key
3250
+ #
3251
+ # @return [String]
3252
+ required :key, String
3253
+
3254
+ # @!attribute value
3255
+ #
3256
+ # @return [String]
3257
+ required :value, String
3258
+
3259
+ # @!method initialize(entity:, key:, value:)
3260
+ # @param entity [Symbol, MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter::Entity]
3261
+ # @param key [String]
3262
+ # @param value [String]
3263
+
3264
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::ThresholdBalanceSpecifier::Exclude::CustomFieldFilter#entity
3265
+ module Entity
3266
+ extend MetronomeSDK::Internal::Type::Enum
3267
+
3268
+ COMMIT = :Commit
3269
+ CONTRACT_CREDIT = :ContractCredit
3270
+ CONTRACT_CREDIT_OR_COMMIT = :ContractCreditOrCommit
3271
+
3272
+ # @!method self.values
3273
+ # @return [Array<Symbol>]
3274
+ end
3275
+ end
3276
+ end
3167
3277
  end
3168
3278
  end
3169
3279
 
@@ -3513,6 +3623,14 @@ module MetronomeSDK
3513
3623
 
3514
3624
  # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration#discount_configuration
3515
3625
  class DiscountConfiguration < MetronomeSDK::Internal::Type::BaseModel
3626
+ # @!attribute cap
3627
+ # Update the discount cap. Set to null to remove an existing cap.
3628
+ #
3629
+ # @return [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::DiscountConfiguration::Cap, nil]
3630
+ optional :cap,
3631
+ -> { MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::DiscountConfiguration::Cap },
3632
+ nil?: true
3633
+
3516
3634
  # @!attribute payment_fraction
3517
3635
  # The fraction of the original amount that the customer pays after applying the
3518
3636
  # discount. Set to null to remove the discount fraction. For example, 0.85 means
@@ -3521,12 +3639,36 @@ module MetronomeSDK
3521
3639
  # @return [Float, nil]
3522
3640
  optional :payment_fraction, Float, nil?: true
3523
3641
 
3524
- # @!method initialize(payment_fraction: nil)
3642
+ # @!method initialize(cap: nil, payment_fraction: nil)
3525
3643
  # Some parameter documentations has been truncated, see
3526
3644
  # {MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::DiscountConfiguration}
3527
3645
  # for more details.
3528
3646
  #
3647
+ # @param cap [MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::DiscountConfiguration::Cap, nil] Update the discount cap. Set to null to remove an existing cap.
3648
+ #
3529
3649
  # @param payment_fraction [Float, nil] The fraction of the original amount that the customer pays after applying the di
3650
+
3651
+ # @see MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::DiscountConfiguration#cap
3652
+ class Cap < MetronomeSDK::Internal::Type::BaseModel
3653
+ # @!attribute amount
3654
+ # Accumulated spend ceiling above which the discount stops applying.
3655
+ #
3656
+ # @return [Float]
3657
+ required :amount, Float
3658
+
3659
+ # @!attribute spend_tracker_alias
3660
+ # Alias of the spend tracker this cap is measured against.
3661
+ #
3662
+ # @return [String]
3663
+ required :spend_tracker_alias, String
3664
+
3665
+ # @!method initialize(amount:, spend_tracker_alias:)
3666
+ # Update the discount cap. Set to null to remove an existing cap.
3667
+ #
3668
+ # @param amount [Float] Accumulated spend ceiling above which the discount stops applying.
3669
+ #
3670
+ # @param spend_tracker_alias [String] Alias of the spend tracker this cap is measured against.
3671
+ end
3530
3672
  end
3531
3673
  end
3532
3674
 
@@ -144,7 +144,7 @@ module MetronomeSDK
144
144
  # `usage_filters` to route the correct usage to each contract.
145
145
  # [Read more about usage filters](https://docs.metronome.com/manage-product-access/provision-customer/#create-a-usage-filter).
146
146
  #
147
- # @overload create(customer_id:, starting_at:, billing_provider_configuration: nil, commits: nil, credits: nil, custom_fields: nil, discounts: nil, ending_before: nil, hierarchy_configuration: nil, multiplier_override_prioritization: nil, name: nil, net_payment_terms_days: nil, netsuite_sales_order_id: nil, overrides: nil, package_alias: nil, package_id: nil, prepaid_balance_threshold_configuration: nil, professional_services: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, reseller_royalties: nil, revenue_system_configuration: nil, salesforce_opportunity_id: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, subscriptions: nil, total_contract_value: nil, transition: nil, uniqueness_key: nil, usage_filter: nil, usage_statement_schedule: nil, request_options: {})
147
+ # @overload create(customer_id:, starting_at:, billing_provider_configuration: nil, commits: nil, credits: nil, custom_fields: nil, discounts: nil, ending_before: nil, hierarchy_configuration: nil, multiplier_override_prioritization: nil, name: nil, net_payment_terms_days: nil, netsuite_sales_order_id: nil, overrides: nil, package_alias: nil, package_id: nil, prepaid_balance_threshold_configuration: nil, professional_services: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, reseller_royalties: nil, revenue_system_configuration: nil, salesforce_opportunity_id: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, spend_trackers: nil, subscriptions: nil, total_contract_value: nil, transition: nil, uniqueness_key: nil, usage_filter: nil, usage_statement_schedule: nil, request_options: {})
148
148
  #
149
149
  # @param customer_id [String]
150
150
  #
@@ -202,6 +202,8 @@ module MetronomeSDK
202
202
  #
203
203
  # @param spend_threshold_configuration [MetronomeSDK::Models::SpendThresholdConfiguration]
204
204
  #
205
+ # @param spend_trackers [Array<MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker>] Spend trackers to attach to this contract. Aliases must be unique within a contr
206
+ #
205
207
  # @param subscriptions [Array<MetronomeSDK::Models::V1::ContractCreateParams::Subscription>] Optional list of [subscriptions](https://docs.metronome.com/manage-product-acces
206
208
  #
207
209
  # @param total_contract_value [Float] This field's availability is dependent on your client's configuration.
@@ -58,7 +58,7 @@ module MetronomeSDK
58
58
  # provisioning with a package. Edited contracts will still be associated with
59
59
  # the package used during provisioning.
60
60
  #
61
- # @overload create(name:, aliases: nil, billing_provider: nil, commits: nil, contract_name: nil, credits: nil, delivery_method: nil, duration: nil, multiplier_override_prioritization: nil, net_payment_terms_days: nil, overrides: nil, prepaid_balance_threshold_configuration: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, subscriptions: nil, uniqueness_key: nil, usage_statement_schedule: nil, request_options: {})
61
+ # @overload create(name:, aliases: nil, billing_provider: nil, commits: nil, contract_name: nil, credits: nil, delivery_method: nil, duration: nil, multiplier_override_prioritization: nil, net_payment_terms_days: nil, overrides: nil, prepaid_balance_threshold_configuration: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, spend_trackers: nil, subscriptions: nil, uniqueness_key: nil, usage_statement_schedule: nil, request_options: {})
62
62
  #
63
63
  # @param name [String]
64
64
  #
@@ -98,6 +98,8 @@ module MetronomeSDK
98
98
  #
99
99
  # @param spend_threshold_configuration [MetronomeSDK::Models::SpendThresholdConfiguration]
100
100
  #
101
+ # @param spend_trackers [Array<MetronomeSDK::Models::V1::PackageCreateParams::SpendTracker>]
102
+ #
101
103
  # @param subscriptions [Array<MetronomeSDK::Models::V1::PackageCreateParams::Subscription>]
102
104
  #
103
105
  # @param uniqueness_key [String] Prevents the creation of duplicates. If a request to create a record is made wit
@@ -216,10 +218,9 @@ module MetronomeSDK
216
218
  #
217
219
  # ### **Usage guidelines:**
218
220
  #
219
- # Use the **`starting_at`**, **`covering_date`**,
220
- # and **`include_archived`** parameters to filter the list of returned contracts.
221
- # For example, to list only currently active contracts,
222
- # pass **`covering_date`** equal to the current time.
221
+ # Use the **`starting_at`**, **`covering_date`**, and **`include_archived`**
222
+ # parameters to filter the list of returned contracts. For example, to list only
223
+ # currently active contracts, pass **`covering_date`** equal to the current time.
223
224
  #
224
225
  # @overload list_contracts_on_package(package_id:, limit: nil, next_page: nil, covering_date: nil, include_archived: nil, starting_at: nil, request_options: {})
225
226
  #
@@ -80,9 +80,6 @@ module MetronomeSDK
80
80
  # @return [MetronomeSDK::Resources::V1::Packages]
81
81
  attr_reader :packages
82
82
 
83
- # @return [MetronomeSDK::Resources::V1::Payments]
84
- attr_reader :payments
85
-
86
83
  # Use these endpoints to configure a billing API key, a webhook secret, or invoice
87
84
  # finalization behavior.
88
85
  # @return [MetronomeSDK::Resources::V1::Settings]
@@ -107,7 +104,6 @@ module MetronomeSDK
107
104
  @invoices = MetronomeSDK::Resources::V1::Invoices.new(client: client)
108
105
  @contracts = MetronomeSDK::Resources::V1::Contracts.new(client: client)
109
106
  @packages = MetronomeSDK::Resources::V1::Packages.new(client: client)
110
- @payments = MetronomeSDK::Resources::V1::Payments.new(client: client)
111
107
  @settings = MetronomeSDK::Resources::V1::Settings.new(client: client)
112
108
  end
113
109
  end
@@ -128,7 +128,7 @@ module MetronomeSDK
128
128
  # - Contract editing must be enabled to use this endpoint. Reach out to your
129
129
  # Metronome representative to learn more.
130
130
  #
131
- # @overload edit(contract_id:, customer_id:, add_billing_provider_configuration_update: nil, add_commits: nil, add_credits: nil, add_discounts: nil, add_overrides: nil, add_prepaid_balance_threshold_configuration: nil, add_professional_services: nil, add_recurring_commits: nil, add_recurring_credits: nil, add_reseller_royalties: nil, add_revenue_system_configuration_update: nil, add_scheduled_charges: nil, add_spend_threshold_configuration: nil, add_subscriptions: nil, allow_contract_ending_before_finalized_invoice: nil, archive_commits: nil, archive_credits: nil, archive_scheduled_charges: nil, remove_overrides: nil, uniqueness_key: nil, update_commits: nil, update_contract_end_date: nil, update_contract_name: nil, update_credits: nil, update_net_payment_terms_days: nil, update_prepaid_balance_threshold_configuration: nil, update_recurring_commits: nil, update_recurring_credits: nil, update_scheduled_charges: nil, update_spend_threshold_configuration: nil, update_subscriptions: nil, request_options: {})
131
+ # @overload edit(contract_id:, customer_id:, add_billing_provider_configuration_update: nil, add_commits: nil, add_credits: nil, add_discounts: nil, add_overrides: nil, add_prepaid_balance_threshold_configuration: nil, add_professional_services: nil, add_recurring_commits: nil, add_recurring_credits: nil, add_reseller_royalties: nil, add_revenue_system_configuration_update: nil, add_scheduled_charges: nil, add_spend_threshold_configuration: nil, add_spend_trackers: nil, add_subscriptions: nil, allow_contract_ending_before_finalized_invoice: nil, archive_commits: nil, archive_credits: nil, archive_scheduled_charges: nil, archive_spend_trackers: nil, remove_overrides: nil, uniqueness_key: nil, update_commits: nil, update_contract_end_date: nil, update_contract_name: nil, update_credits: nil, update_net_payment_terms_days: nil, update_prepaid_balance_threshold_configuration: nil, update_recurring_commits: nil, update_recurring_credits: nil, update_scheduled_charges: nil, update_spend_threshold_configuration: nil, update_subscriptions: nil, request_options: {})
132
132
  #
133
133
  # @param contract_id [String] ID of the contract being edited
134
134
  #
@@ -160,6 +160,8 @@ module MetronomeSDK
160
160
  #
161
161
  # @param add_spend_threshold_configuration [MetronomeSDK::Models::SpendThresholdConfigurationV2]
162
162
  #
163
+ # @param add_spend_trackers [Array<MetronomeSDK::Models::V2::ContractEditParams::AddSpendTracker>] Spend trackers to add to this contract. Aliases must be unique within a contract
164
+ #
163
165
  # @param add_subscriptions [Array<MetronomeSDK::Models::V2::ContractEditParams::AddSubscription>] Optional list of [subscriptions](https://docs.metronome.com/manage-product-acces
164
166
  #
165
167
  # @param allow_contract_ending_before_finalized_invoice [Boolean] If true, allows setting the contract end date earlier than the end_timestamp of
@@ -170,6 +172,8 @@ module MetronomeSDK
170
172
  #
171
173
  # @param archive_scheduled_charges [Array<MetronomeSDK::Models::V2::ContractEditParams::ArchiveScheduledCharge>] IDs of scheduled charges to archive
172
174
  #
175
+ # @param archive_spend_trackers [Array<String>] Aliases of spend trackers to archive.
176
+ #
173
177
  # @param remove_overrides [Array<MetronomeSDK::Models::V2::ContractEditParams::RemoveOverride>] IDs of overrides to remove
174
178
  #
175
179
  # @param uniqueness_key [String] Optional uniqueness key to prevent duplicate contract edits.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MetronomeSDK
4
- VERSION = "3.6.0"
4
+ VERSION = "3.7.0"
5
5
  end
data/lib/metronome_sdk.rb CHANGED
@@ -271,13 +271,6 @@ require_relative "metronome_sdk/models/v1/package_list_params"
271
271
  require_relative "metronome_sdk/models/v1/package_list_response"
272
272
  require_relative "metronome_sdk/models/v1/package_retrieve_params"
273
273
  require_relative "metronome_sdk/models/v1/package_retrieve_response"
274
- require_relative "metronome_sdk/models/v1/payment"
275
- require_relative "metronome_sdk/models/v1/payment_attempt_params"
276
- require_relative "metronome_sdk/models/v1/payment_attempt_response"
277
- require_relative "metronome_sdk/models/v1/payment_cancel_params"
278
- require_relative "metronome_sdk/models/v1/payment_cancel_response"
279
- require_relative "metronome_sdk/models/v1/payment_list_params"
280
- require_relative "metronome_sdk/models/v1/payment_status"
281
274
  require_relative "metronome_sdk/models/v1/plan_detail"
282
275
  require_relative "metronome_sdk/models/v1/plan_get_details_params"
283
276
  require_relative "metronome_sdk/models/v1/plan_get_details_response"
@@ -343,7 +336,6 @@ require_relative "metronome_sdk/resources/v1/custom_fields"
343
336
  require_relative "metronome_sdk/resources/v1/dashboards"
344
337
  require_relative "metronome_sdk/resources/v1/invoices"
345
338
  require_relative "metronome_sdk/resources/v1/packages"
346
- require_relative "metronome_sdk/resources/v1/payments"
347
339
  require_relative "metronome_sdk/resources/v1/plans"
348
340
  require_relative "metronome_sdk/resources/v1/pricing_units"
349
341
  require_relative "metronome_sdk/resources/v1/services"
@@ -237,6 +237,18 @@ module MetronomeSDK
237
237
  end
238
238
  attr_writer :specifiers
239
239
 
240
+ # Optional attributes controlling how this commit interacts with spend trackers.
241
+ sig { returns(T.nilable(MetronomeSDK::Commit::SpendTrackerAttributes)) }
242
+ attr_reader :spend_tracker_attributes
243
+
244
+ sig do
245
+ params(
246
+ spend_tracker_attributes:
247
+ MetronomeSDK::Commit::SpendTrackerAttributes::OrHash
248
+ ).void
249
+ end
250
+ attr_writer :spend_tracker_attributes
251
+
240
252
  # The subscription configuration for this commit, if it was generated from a
241
253
  # recurring commit with a subscription attached.
242
254
  sig { returns(T.nilable(MetronomeSDK::Commit::SubscriptionConfig)) }
@@ -307,6 +319,8 @@ module MetronomeSDK
307
319
  rollover_fraction: Float,
308
320
  salesforce_opportunity_id: String,
309
321
  specifiers: T::Array[MetronomeSDK::CommitSpecifier::OrHash],
322
+ spend_tracker_attributes:
323
+ MetronomeSDK::Commit::SpendTrackerAttributes::OrHash,
310
324
  subscription_config: MetronomeSDK::Commit::SubscriptionConfig::OrHash,
311
325
  uniqueness_key: String
312
326
  ).returns(T.attached_class)
@@ -372,6 +386,8 @@ module MetronomeSDK
372
386
  # or credit. A customer's usage needs to meet the condition of at least one of the
373
387
  # specifiers to contribute to a commit's or credit's drawdown.
374
388
  specifiers: nil,
389
+ # Optional attributes controlling how this commit interacts with spend trackers.
390
+ spend_tracker_attributes: nil,
375
391
  # The subscription configuration for this commit, if it was generated from a
376
392
  # recurring commit with a subscription attached.
377
393
  subscription_config: nil,
@@ -413,6 +429,8 @@ module MetronomeSDK
413
429
  rollover_fraction: Float,
414
430
  salesforce_opportunity_id: String,
415
431
  specifiers: T::Array[MetronomeSDK::CommitSpecifier],
432
+ spend_tracker_attributes:
433
+ MetronomeSDK::Commit::SpendTrackerAttributes,
416
434
  subscription_config: MetronomeSDK::Commit::SubscriptionConfig,
417
435
  uniqueness_key: String
418
436
  }
@@ -1824,6 +1842,36 @@ module MetronomeSDK
1824
1842
  end
1825
1843
  end
1826
1844
 
1845
+ class SpendTrackerAttributes < MetronomeSDK::Internal::Type::BaseModel
1846
+ OrHash =
1847
+ T.type_alias do
1848
+ T.any(
1849
+ MetronomeSDK::Commit::SpendTrackerAttributes,
1850
+ MetronomeSDK::Internal::AnyHash
1851
+ )
1852
+ end
1853
+
1854
+ # If true, this commit is included in spend trackers with discounted set to
1855
+ # DISCOUNTED_ONLY
1856
+ sig { returns(T::Boolean) }
1857
+ attr_accessor :counts_as_discounted
1858
+
1859
+ # Optional attributes controlling how this commit interacts with spend trackers.
1860
+ sig do
1861
+ params(counts_as_discounted: T::Boolean).returns(T.attached_class)
1862
+ end
1863
+ def self.new(
1864
+ # If true, this commit is included in spend trackers with discounted set to
1865
+ # DISCOUNTED_ONLY
1866
+ counts_as_discounted:
1867
+ )
1868
+ end
1869
+
1870
+ sig { override.returns({ counts_as_discounted: T::Boolean }) }
1871
+ def to_hash
1872
+ end
1873
+ end
1874
+
1827
1875
  class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
1828
1876
  OrHash =
1829
1877
  T.type_alias do