metronome-sdk 3.6.0 → 3.8.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +54 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
- data/lib/metronome_sdk/internal/type/enum.rb +0 -25
- data/lib/metronome_sdk/models/commit.rb +36 -1
- data/lib/metronome_sdk/models/contract.rb +140 -1
- data/lib/metronome_sdk/models/contract_v2.rb +457 -8
- data/lib/metronome_sdk/models/contract_without_amendments.rb +320 -5
- data/lib/metronome_sdk/models/credit.rb +10 -1
- data/lib/metronome_sdk/models/override.rb +7 -1
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +113 -2
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +105 -2
- data/lib/metronome_sdk/models/spend_threshold_configuration.rb +33 -1
- data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +33 -1
- data/lib/metronome_sdk/models/subscription.rb +90 -2
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +127 -1
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +46 -5
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +436 -12
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +1308 -3
- data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rb +88 -0
- data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rb +62 -0
- data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +10 -1
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +127 -1
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +130 -3
- data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +10 -1
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
- data/lib/metronome_sdk/models/v1/package_create_params.rb +394 -11
- data/lib/metronome_sdk/models/v1/package_list_response.rb +374 -8
- data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +378 -8
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +817 -13
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +4310 -3
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +600 -10
- data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +4 -0
- data/lib/metronome_sdk/resources/v1/contracts.rb +71 -2
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +4 -2
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +3 -1
- data/lib/metronome_sdk/resources/v1/dashboards.rb +7 -2
- data/lib/metronome_sdk/resources/v1/packages.rb +6 -5
- data/lib/metronome_sdk/resources/v1.rb +0 -4
- data/lib/metronome_sdk/resources/v2/contracts.rb +5 -1
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +2 -8
- data/rbi/metronome_sdk/models/commit.rbi +61 -0
- data/rbi/metronome_sdk/models/contract.rbi +354 -0
- data/rbi/metronome_sdk/models/contract_v2.rbi +1132 -11
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +831 -0
- data/rbi/metronome_sdk/models/credit.rbi +13 -0
- data/rbi/metronome_sdk/models/override.rbi +9 -0
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +299 -6
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +287 -6
- data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +78 -3
- data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -3
- data/rbi/metronome_sdk/models/subscription.rbi +212 -3
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +373 -0
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +81 -6
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1095 -17
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +2911 -4
- data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbi +112 -0
- data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbi +119 -0
- data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +13 -0
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +360 -0
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +379 -2
- data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +13 -0
- data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
- data/rbi/metronome_sdk/models/v1/package_create_params.rbi +1049 -42
- data/rbi/metronome_sdk/models/v1/package_list_response.rbi +1051 -54
- data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +1051 -54
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +2130 -114
- data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +9749 -4
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1567 -82
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +8 -0
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +77 -0
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +8 -1
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/dashboards.rbi +7 -2
- data/rbi/metronome_sdk/resources/v1/packages.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1.rbi +0 -3
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +10 -0
- data/sig/metronome_sdk/models/commit.rbs +26 -0
- data/sig/metronome_sdk/models/contract.rbs +151 -0
- data/sig/metronome_sdk/models/contract_v2.rbs +448 -5
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +320 -2
- data/sig/metronome_sdk/models/credit.rbs +7 -0
- data/sig/metronome_sdk/models/override.rbs +7 -0
- data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +116 -6
- data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +116 -6
- data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +31 -3
- data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +31 -3
- data/sig/metronome_sdk/models/subscription.rbs +88 -3
- data/sig/metronome_sdk/models/v1/alert_create_params.rbs +144 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +26 -0
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +412 -5
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +1210 -4
- data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbs +63 -0
- data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbs +59 -0
- data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +141 -0
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +150 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +8 -1
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
- data/sig/metronome_sdk/models/v1/package_create_params.rbs +386 -5
- data/sig/metronome_sdk/models/v1/package_list_response.rbs +380 -5
- data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +378 -5
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +751 -14
- data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4215 -4
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +569 -14
- data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/contracts.rbs +14 -0
- data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/packages.rbs +1 -0
- data/sig/metronome_sdk/resources/v1.rbs +0 -2
- data/sig/metronome_sdk/resources/v2/contracts.rbs +2 -0
- metadata +8 -26
- data/lib/metronome_sdk/models/v1/payment.rb +0 -196
- data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +0 -28
- data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +0 -18
- data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +0 -28
- data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +0 -18
- data/lib/metronome_sdk/models/v1/payment_list_params.rb +0 -53
- data/lib/metronome_sdk/models/v1/payment_status.rb +0 -19
- data/lib/metronome_sdk/resources/v1/payments.rb +0 -102
- data/rbi/metronome_sdk/models/v1/payment.rbi +0 -403
- data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +0 -48
- data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +0 -35
- data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +0 -48
- data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +0 -35
- data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +0 -91
- data/rbi/metronome_sdk/models/v1/payment_status.rbi +0 -33
- data/rbi/metronome_sdk/resources/v1/payments.rbi +0 -72
- data/sig/metronome_sdk/models/v1/payment.rbs +0 -243
- data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +0 -30
- data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +0 -15
- data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +0 -30
- data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +0 -15
- data/sig/metronome_sdk/models/v1/payment_list_params.rbs +0 -56
- data/sig/metronome_sdk/models/v1/payment_status.rbs +0 -19
- data/sig/metronome_sdk/resources/v1/payments.rbs +0 -30
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 97f31a567a1ed13359a6db7517a0a31b47f7ab157d92e417fdfb60050869737a
|
|
4
|
+
data.tar.gz: b17e2f57bd7d2db609f95f5dcf5b165d6e050dd05eb717bab10148b450b19bb0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 771169e3edf3cbd87d0ce517fa9999c1303af4ad003ad278c58ad7239545f7157224e52646b1db43fc7b17db0af0d038cdda41d66bc6115038cb39ba48123843
|
|
7
|
+
data.tar.gz: 8b0180525f48ed9bf872de4bf2f29c6b504f20eef0dd1acc013d526115dfb34b3839dca5c0e20d0a8ec2248ea6968678b919a2881c7ab801b637eb72f2abd17f
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,59 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.8.0 (2026-06-29)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v3.7.0...v3.8.0](https://github.com/Metronome-Industries/metronome-ruby/compare/v3.7.0...v3.8.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* [🪿] Remove `allow-subscriptions-custom-billing-anchor` feature flag ([4a67399](https://github.com/Metronome-Industries/metronome-ruby/commit/4a673991f9369fe744bc3a5a2f854c14c9b497ac))
|
|
10
|
+
* Add `Action` and `Action_hover` theme color options to embeddable dashboard ([ad6641d](https://github.com/Metronome-Industries/metronome-ruby/commit/ad6641d4ff8118e8acc920c143adb6e57bfd4201))
|
|
11
|
+
* Add alert specifiers to for `low_remaining_contract_credit_and_commit_balance_reached` threshold notification creation payload ([8dccadf](https://github.com/Metronome-Industries/metronome-ruby/commit/8dccadf1cc4077759e004a8802cb603971b6f978))
|
|
12
|
+
* Add any_commit_and_credit_ids to override specifier fields ([797cfca](https://github.com/Metronome-Industries/metronome-ruby/commit/797cfca1e8f5179b99887b99ccbf8391366cdb74))
|
|
13
|
+
* add getSubscriptionSeatsHistory to Node SDK ([d288a2a](https://github.com/Metronome-Industries/metronome-ruby/commit/d288a2a109b6f0d6e0c45cdd4d3a8ab64ec9732c))
|
|
14
|
+
* Add notification_metadata to four API endpoints (Anthropic-only) ([fb4e252](https://github.com/Metronome-Industries/metronome-ruby/commit/fb4e252118ebc3ce523e12074af87a90dadf712a))
|
|
15
|
+
* added created by to commits ([a11cb6f](https://github.com/Metronome-Industries/metronome-ruby/commit/a11cb6fe06264f5d348818e77c8b1b1bb560b339))
|
|
16
|
+
* **CONN-980:** add contract_id, invoice_type, show_unbillable_invoices to embeddable dashboard API ([cccf877](https://github.com/Metronome-Industries/metronome-ruby/commit/cccf877456c646c28569fbf9e4e86cec7b32faf6))
|
|
17
|
+
* createdBy description specifies excluding system created commits ([d492e50](https://github.com/Metronome-Industries/metronome-ruby/commit/d492e5019a404dd6cfd0606a7fa959e45e79d42c))
|
|
18
|
+
* daily recurrence frequency for recurring commits ([b143c69](https://github.com/Metronome-Industries/metronome-ruby/commit/b143c690a98329e91830210aebb56d9fd910b8d3))
|
|
19
|
+
* Docs: Update v1.yml ([2b13cb9](https://github.com/Metronome-Industries/metronome-ruby/commit/2b13cb9e673f4af7a8413c581e8b0722f98905c2))
|
|
20
|
+
* Revert "[pgs] Remove `allow-subscriptions-custom-billing-anchor` and proration rounding feature flags" ([804fc62](https://github.com/Metronome-Industries/metronome-ruby/commit/804fc62384bd67a65e9f022349d8af18e7faf3e8))
|
|
21
|
+
* Revert "Revert "[pgs] Remove `allow-subscriptions-custom-billing-anchor` and proration rounding feature flags"" ([b5532d9](https://github.com/Metronome-Industries/metronome-ruby/commit/b5532d9ec1866c08629b7f7616bdb7eb12a2f541))
|
|
22
|
+
* skip seat IDs from balances ([242fa91](https://github.com/Metronome-Industries/metronome-ruby/commit/242fa91291d812744c214497ee2f87e03c20e048))
|
|
23
|
+
* Update copy ([911d292](https://github.com/Metronome-Industries/metronome-ruby/commit/911d2924cef101ec49077fe8a859e7b9a9d3f083))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Bug Fixes
|
|
27
|
+
|
|
28
|
+
* **client:** send content-type header for requests with an omitted optional body ([4d4e05a](https://github.com/Metronome-Industries/metronome-ruby/commit/4d4e05aa6c499bc6f51e60d134225cccc49767d0))
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
### Chores
|
|
32
|
+
|
|
33
|
+
* (internal) Add description for threshold balance specifiers fields ([bbc523a](https://github.com/Metronome-Industries/metronome-ruby/commit/bbc523aae016d1a9d907bdae0a656164ffd242de))
|
|
34
|
+
* **internal:** bound formatter parallelism to CPU count ([b497f47](https://github.com/Metronome-Industries/metronome-ruby/commit/b497f478f4d039c50d4cf2366bd2d492d0489002))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### Documentation
|
|
38
|
+
|
|
39
|
+
* add RPS limit and batch recommendation to addRate endpoint ([aad17f7](https://github.com/Metronome-Industries/metronome-ruby/commit/aad17f7960f3caad7db5c4e4d3d78e1308b92676))
|
|
40
|
+
|
|
41
|
+
## 3.7.0 (2026-05-29)
|
|
42
|
+
|
|
43
|
+
Full Changelog: [v3.6.0...v3.7.0](https://github.com/Metronome-Industries/metronome-ruby/compare/v3.6.0...v3.7.0)
|
|
44
|
+
|
|
45
|
+
### Features
|
|
46
|
+
|
|
47
|
+
* [LAUNCH-2814] editContract returns full edit in the response ([fd684bc](https://github.com/Metronome-Industries/metronome-ruby/commit/fd684bc491dc2083911a144ba0a455385eaf315d))
|
|
48
|
+
* [orch-1860] remove all deprecated `/payments/*` endpoints from API ([1c6cdb1](https://github.com/Metronome-Industries/metronome-ruby/commit/1c6cdb1d7629e6a29adc78a1dbd460eebbbab08b))
|
|
49
|
+
* create contract returns contract data ([16469e5](https://github.com/Metronome-Industries/metronome-ruby/commit/16469e57c6563dd35b5b2f3cf05893a69ec7d406))
|
|
50
|
+
* nikku-orch-1723-update-create-contract ([a5de974](https://github.com/Metronome-Industries/metronome-ruby/commit/a5de9740f141a211e0435fff858ceca62d2b5359))
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
### Chores
|
|
54
|
+
|
|
55
|
+
* (internal) Add threshold balance specifier to contract create & edit, package create and both contract and package retrievals ([eb1049d](https://github.com/Metronome-Industries/metronome-ruby/commit/eb1049d2826865a29710c274e13cc311005a0e91))
|
|
56
|
+
|
|
3
57
|
## 3.6.0 (2026-05-18)
|
|
4
58
|
|
|
5
59
|
Full Changelog: [v3.5.0...v3.6.0](https://github.com/Metronome-Industries/metronome-ruby/compare/v3.5.0...v3.6.0)
|
data/README.md
CHANGED
|
@@ -306,7 +306,10 @@ module MetronomeSDK
|
|
|
306
306
|
MetronomeSDK::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
|
|
307
307
|
end
|
|
308
308
|
|
|
309
|
-
|
|
309
|
+
# Generated methods always pass `req[:body]` for operations that define a
|
|
310
|
+
# request body, so only elide the content-type header when the operation
|
|
311
|
+
# has no body at all, not when an optional body param was omitted.
|
|
312
|
+
headers.delete("content-type") if body.nil? && !req.key?(:body)
|
|
310
313
|
|
|
311
314
|
url = MetronomeSDK::Internal::Util.join_parsed_uri(
|
|
312
315
|
@base_url_components,
|
|
@@ -15,31 +15,6 @@ module MetronomeSDK
|
|
|
15
15
|
#
|
|
16
16
|
# We can therefore convert string values to Symbols, but can't convert other
|
|
17
17
|
# values safely.
|
|
18
|
-
#
|
|
19
|
-
# @example
|
|
20
|
-
# # `payment_status` is a `MetronomeSDK::V1::PaymentStatus`
|
|
21
|
-
# case payment_status
|
|
22
|
-
# when MetronomeSDK::V1::PaymentStatus::PENDING
|
|
23
|
-
# # ...
|
|
24
|
-
# when MetronomeSDK::V1::PaymentStatus::REQUIRES_INTERVENTION
|
|
25
|
-
# # ...
|
|
26
|
-
# when MetronomeSDK::V1::PaymentStatus::PAID
|
|
27
|
-
# # ...
|
|
28
|
-
# else
|
|
29
|
-
# puts(payment_status)
|
|
30
|
-
# end
|
|
31
|
-
#
|
|
32
|
-
# @example
|
|
33
|
-
# case payment_status
|
|
34
|
-
# in :pending
|
|
35
|
-
# # ...
|
|
36
|
-
# in :requires_intervention
|
|
37
|
-
# # ...
|
|
38
|
-
# in :paid
|
|
39
|
-
# # ...
|
|
40
|
-
# else
|
|
41
|
-
# puts(payment_status)
|
|
42
|
-
# end
|
|
43
18
|
module Enum
|
|
44
19
|
include MetronomeSDK::Internal::Type::Converter
|
|
45
20
|
include MetronomeSDK::Internal::Util::SorbetRuntimeSupport
|
|
@@ -81,6 +81,13 @@ module MetronomeSDK
|
|
|
81
81
|
# @return [MetronomeSDK::Models::Commit::Contract, nil]
|
|
82
82
|
optional :contract, -> { MetronomeSDK::Commit::Contract }
|
|
83
83
|
|
|
84
|
+
# @!attribute created_by
|
|
85
|
+
# The actor who created this commit. Omitted for system-generated commits such as
|
|
86
|
+
# recurring commits, rollover commits, and threshold commits.
|
|
87
|
+
#
|
|
88
|
+
# @return [String, nil]
|
|
89
|
+
optional :created_by, String
|
|
90
|
+
|
|
84
91
|
# @!attribute custom_fields
|
|
85
92
|
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
86
93
|
#
|
|
@@ -171,6 +178,12 @@ module MetronomeSDK
|
|
|
171
178
|
# @return [Array<MetronomeSDK::Models::CommitSpecifier>, nil]
|
|
172
179
|
optional :specifiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifier] }
|
|
173
180
|
|
|
181
|
+
# @!attribute spend_tracker_attributes
|
|
182
|
+
# Optional attributes controlling how this commit interacts with spend trackers.
|
|
183
|
+
#
|
|
184
|
+
# @return [MetronomeSDK::Models::Commit::SpendTrackerAttributes, nil]
|
|
185
|
+
optional :spend_tracker_attributes, -> { MetronomeSDK::Commit::SpendTrackerAttributes }
|
|
186
|
+
|
|
174
187
|
# @!attribute subscription_config
|
|
175
188
|
# The subscription configuration for this commit, if it was generated from a
|
|
176
189
|
# recurring commit with a subscription attached.
|
|
@@ -187,7 +200,7 @@ module MetronomeSDK
|
|
|
187
200
|
# @return [String, nil]
|
|
188
201
|
optional :uniqueness_key, String
|
|
189
202
|
|
|
190
|
-
# @!method initialize(id:, created_at:, product:, type:, access_schedule: nil, amount: nil, applicable_contract_ids: nil, applicable_product_ids: nil, applicable_product_tags: nil, archived_at: nil, balance: nil, contract: nil, custom_fields: nil, description: nil, hierarchy_configuration: nil, invoice_contract: nil, invoice_schedule: nil, ledger: nil, name: nil, netsuite_sales_order_id: nil, priority: nil, rate_type: nil, recurring_commit_id: nil, rolled_over_from: nil, rollover_fraction: nil, salesforce_opportunity_id: nil, specifiers: nil, subscription_config: nil, uniqueness_key: nil)
|
|
203
|
+
# @!method initialize(id:, created_at:, product:, type:, access_schedule: nil, amount: nil, applicable_contract_ids: nil, applicable_product_ids: nil, applicable_product_tags: nil, archived_at: nil, balance: nil, contract: nil, created_by: nil, custom_fields: nil, description: nil, hierarchy_configuration: nil, invoice_contract: nil, invoice_schedule: nil, ledger: nil, name: nil, netsuite_sales_order_id: nil, priority: nil, rate_type: nil, recurring_commit_id: nil, rolled_over_from: nil, rollover_fraction: nil, salesforce_opportunity_id: nil, specifiers: nil, spend_tracker_attributes: nil, subscription_config: nil, uniqueness_key: nil)
|
|
191
204
|
# Some parameter documentations has been truncated, see
|
|
192
205
|
# {MetronomeSDK::Models::Commit} for more details.
|
|
193
206
|
#
|
|
@@ -215,6 +228,8 @@ module MetronomeSDK
|
|
|
215
228
|
#
|
|
216
229
|
# @param contract [MetronomeSDK::Models::Commit::Contract]
|
|
217
230
|
#
|
|
231
|
+
# @param created_by [String] The actor who created this commit. Omitted for system-generated commits such as
|
|
232
|
+
#
|
|
218
233
|
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
219
234
|
#
|
|
220
235
|
# @param description [String]
|
|
@@ -245,6 +260,8 @@ module MetronomeSDK
|
|
|
245
260
|
#
|
|
246
261
|
# @param specifiers [Array<MetronomeSDK::Models::CommitSpecifier>] List of filters that determine what kind of customer usage draws down a commit o
|
|
247
262
|
#
|
|
263
|
+
# @param spend_tracker_attributes [MetronomeSDK::Models::Commit::SpendTrackerAttributes] Optional attributes controlling how this commit interacts with spend trackers.
|
|
264
|
+
#
|
|
248
265
|
# @param subscription_config [MetronomeSDK::Models::Commit::SubscriptionConfig] The subscription configuration for this commit, if it was generated from a recur
|
|
249
266
|
#
|
|
250
267
|
# @param uniqueness_key [String] Prevents the creation of duplicates. If a request to create a commit or credit i
|
|
@@ -953,6 +970,24 @@ module MetronomeSDK
|
|
|
953
970
|
# @param contract_id [String]
|
|
954
971
|
end
|
|
955
972
|
|
|
973
|
+
# @see MetronomeSDK::Models::Commit#spend_tracker_attributes
|
|
974
|
+
class SpendTrackerAttributes < MetronomeSDK::Internal::Type::BaseModel
|
|
975
|
+
# @!attribute counts_as_discounted
|
|
976
|
+
# If true, this commit is included in spend trackers with discounted set to
|
|
977
|
+
# DISCOUNTED_ONLY
|
|
978
|
+
#
|
|
979
|
+
# @return [Boolean]
|
|
980
|
+
required :counts_as_discounted, MetronomeSDK::Internal::Type::Boolean
|
|
981
|
+
|
|
982
|
+
# @!method initialize(counts_as_discounted:)
|
|
983
|
+
# Some parameter documentations has been truncated, see
|
|
984
|
+
# {MetronomeSDK::Models::Commit::SpendTrackerAttributes} for more details.
|
|
985
|
+
#
|
|
986
|
+
# Optional attributes controlling how this commit interacts with spend trackers.
|
|
987
|
+
#
|
|
988
|
+
# @param counts_as_discounted [Boolean] If true, this commit is included in spend trackers with discounted set to DISCOU
|
|
989
|
+
end
|
|
990
|
+
|
|
956
991
|
# @see MetronomeSDK::Models::Commit#subscription_config
|
|
957
992
|
class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
|
|
958
993
|
# @!attribute allocation
|
|
@@ -76,6 +76,13 @@ module MetronomeSDK
|
|
|
76
76
|
# @return [MetronomeSDK::Models::SpendThresholdConfiguration, nil]
|
|
77
77
|
optional :spend_threshold_configuration, -> { MetronomeSDK::SpendThresholdConfiguration }
|
|
78
78
|
|
|
79
|
+
# @!attribute spend_trackers
|
|
80
|
+
# Spend trackers attached to this contract.
|
|
81
|
+
#
|
|
82
|
+
# @return [Array<MetronomeSDK::Models::Contract::SpendTracker>, nil]
|
|
83
|
+
optional :spend_trackers,
|
|
84
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Contract::SpendTracker] }
|
|
85
|
+
|
|
79
86
|
# @!attribute subscriptions
|
|
80
87
|
# List of subscriptions on the contract.
|
|
81
88
|
#
|
|
@@ -90,7 +97,7 @@ module MetronomeSDK
|
|
|
90
97
|
# @return [String, nil]
|
|
91
98
|
optional :uniqueness_key, String
|
|
92
99
|
|
|
93
|
-
# @!method initialize(id:, amendments:, current:, customer_id:, initial:, archived_at: nil, custom_fields: nil, customer_billing_provider_configuration: nil, package_id: nil, prepaid_balance_threshold_configuration: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, subscriptions: nil, uniqueness_key: nil)
|
|
100
|
+
# @!method initialize(id:, amendments:, current:, customer_id:, initial:, archived_at: nil, custom_fields: nil, customer_billing_provider_configuration: nil, package_id: nil, prepaid_balance_threshold_configuration: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, spend_trackers: nil, subscriptions: nil, uniqueness_key: nil)
|
|
94
101
|
# Some parameter documentations has been truncated, see
|
|
95
102
|
# {MetronomeSDK::Models::Contract} for more details.
|
|
96
103
|
#
|
|
@@ -118,6 +125,8 @@ module MetronomeSDK
|
|
|
118
125
|
#
|
|
119
126
|
# @param spend_threshold_configuration [MetronomeSDK::Models::SpendThresholdConfiguration]
|
|
120
127
|
#
|
|
128
|
+
# @param spend_trackers [Array<MetronomeSDK::Models::Contract::SpendTracker>] Spend trackers attached to this contract.
|
|
129
|
+
#
|
|
121
130
|
# @param subscriptions [Array<MetronomeSDK::Models::Subscription>] List of subscriptions on the contract.
|
|
122
131
|
#
|
|
123
132
|
# @param uniqueness_key [String] Prevents the creation of duplicates. If a request to create a record is made wit
|
|
@@ -400,6 +409,136 @@ module MetronomeSDK
|
|
|
400
409
|
# @!method self.values
|
|
401
410
|
# @return [Array<Symbol>]
|
|
402
411
|
end
|
|
412
|
+
|
|
413
|
+
class SpendTracker < MetronomeSDK::Internal::Type::BaseModel
|
|
414
|
+
# @!attribute alias_
|
|
415
|
+
# Human-readable identifier, unique per contract.
|
|
416
|
+
#
|
|
417
|
+
# @return [String]
|
|
418
|
+
required :alias_, String, api_name: :alias
|
|
419
|
+
|
|
420
|
+
# @!attribute applicable_spend_specifiers
|
|
421
|
+
#
|
|
422
|
+
# @return [Array<MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier>]
|
|
423
|
+
required :applicable_spend_specifiers,
|
|
424
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Contract::SpendTracker::ApplicableSpendSpecifier] }
|
|
425
|
+
|
|
426
|
+
# @!attribute credit_type_id
|
|
427
|
+
#
|
|
428
|
+
# @return [String]
|
|
429
|
+
required :credit_type_id, String
|
|
430
|
+
|
|
431
|
+
# @!attribute reset_frequency
|
|
432
|
+
#
|
|
433
|
+
# @return [Symbol, MetronomeSDK::Models::Contract::SpendTracker::ResetFrequency]
|
|
434
|
+
required :reset_frequency, enum: -> { MetronomeSDK::Contract::SpendTracker::ResetFrequency }
|
|
435
|
+
|
|
436
|
+
# @!attribute accumulated_spend
|
|
437
|
+
#
|
|
438
|
+
# @return [MetronomeSDK::Models::Contract::SpendTracker::AccumulatedSpend, nil]
|
|
439
|
+
optional :accumulated_spend, -> { MetronomeSDK::Contract::SpendTracker::AccumulatedSpend }
|
|
440
|
+
|
|
441
|
+
# @!method initialize(alias_:, applicable_spend_specifiers:, credit_type_id:, reset_frequency:, accumulated_spend: nil)
|
|
442
|
+
# @param alias_ [String] Human-readable identifier, unique per contract.
|
|
443
|
+
#
|
|
444
|
+
# @param applicable_spend_specifiers [Array<MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier>]
|
|
445
|
+
#
|
|
446
|
+
# @param credit_type_id [String]
|
|
447
|
+
#
|
|
448
|
+
# @param reset_frequency [Symbol, MetronomeSDK::Models::Contract::SpendTracker::ResetFrequency]
|
|
449
|
+
#
|
|
450
|
+
# @param accumulated_spend [MetronomeSDK::Models::Contract::SpendTracker::AccumulatedSpend]
|
|
451
|
+
|
|
452
|
+
class ApplicableSpendSpecifier < MetronomeSDK::Internal::Type::BaseModel
|
|
453
|
+
# @!attribute sources
|
|
454
|
+
#
|
|
455
|
+
# @return [Array<Symbol, MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier::Source>]
|
|
456
|
+
required :sources,
|
|
457
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[enum: MetronomeSDK::Contract::SpendTracker::ApplicableSpendSpecifier::Source] }
|
|
458
|
+
|
|
459
|
+
# @!attribute spend_type
|
|
460
|
+
#
|
|
461
|
+
# @return [Symbol, MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier::SpendType]
|
|
462
|
+
required :spend_type,
|
|
463
|
+
enum: -> { MetronomeSDK::Contract::SpendTracker::ApplicableSpendSpecifier::SpendType }
|
|
464
|
+
|
|
465
|
+
# @!attribute discounted
|
|
466
|
+
#
|
|
467
|
+
# @return [Symbol, MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier::Discounted, nil]
|
|
468
|
+
optional :discounted,
|
|
469
|
+
enum: -> { MetronomeSDK::Contract::SpendTracker::ApplicableSpendSpecifier::Discounted }
|
|
470
|
+
|
|
471
|
+
# @!method initialize(sources:, spend_type:, discounted: nil)
|
|
472
|
+
# @param sources [Array<Symbol, MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier::Source>]
|
|
473
|
+
# @param spend_type [Symbol, MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier::SpendType]
|
|
474
|
+
# @param discounted [Symbol, MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier::Discounted]
|
|
475
|
+
|
|
476
|
+
module Source
|
|
477
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
478
|
+
|
|
479
|
+
THRESHOLD_RECHARGE = :THRESHOLD_RECHARGE
|
|
480
|
+
MANUAL = :MANUAL
|
|
481
|
+
|
|
482
|
+
# @!method self.values
|
|
483
|
+
# @return [Array<Symbol>]
|
|
484
|
+
end
|
|
485
|
+
|
|
486
|
+
# @see MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier#spend_type
|
|
487
|
+
module SpendType
|
|
488
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
489
|
+
|
|
490
|
+
COMMIT_PURCHASE = :COMMIT_PURCHASE
|
|
491
|
+
|
|
492
|
+
# @!method self.values
|
|
493
|
+
# @return [Array<Symbol>]
|
|
494
|
+
end
|
|
495
|
+
|
|
496
|
+
# @see MetronomeSDK::Models::Contract::SpendTracker::ApplicableSpendSpecifier#discounted
|
|
497
|
+
module Discounted
|
|
498
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
499
|
+
|
|
500
|
+
ANY = :ANY
|
|
501
|
+
DISCOUNTED_ONLY = :DISCOUNTED_ONLY
|
|
502
|
+
UNDISCOUNTED_ONLY = :UNDISCOUNTED_ONLY
|
|
503
|
+
|
|
504
|
+
# @!method self.values
|
|
505
|
+
# @return [Array<Symbol>]
|
|
506
|
+
end
|
|
507
|
+
end
|
|
508
|
+
|
|
509
|
+
# @see MetronomeSDK::Models::Contract::SpendTracker#reset_frequency
|
|
510
|
+
module ResetFrequency
|
|
511
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
512
|
+
|
|
513
|
+
BILLING_PERIOD = :BILLING_PERIOD
|
|
514
|
+
|
|
515
|
+
# @!method self.values
|
|
516
|
+
# @return [Array<Symbol>]
|
|
517
|
+
end
|
|
518
|
+
|
|
519
|
+
# @see MetronomeSDK::Models::Contract::SpendTracker#accumulated_spend
|
|
520
|
+
class AccumulatedSpend < MetronomeSDK::Internal::Type::BaseModel
|
|
521
|
+
# @!attribute amount
|
|
522
|
+
#
|
|
523
|
+
# @return [Float]
|
|
524
|
+
required :amount, Float
|
|
525
|
+
|
|
526
|
+
# @!attribute period_ending_before
|
|
527
|
+
#
|
|
528
|
+
# @return [Time]
|
|
529
|
+
required :period_ending_before, Time
|
|
530
|
+
|
|
531
|
+
# @!attribute period_starting_at
|
|
532
|
+
#
|
|
533
|
+
# @return [Time]
|
|
534
|
+
required :period_starting_at, Time
|
|
535
|
+
|
|
536
|
+
# @!method initialize(amount:, period_ending_before:, period_starting_at:)
|
|
537
|
+
# @param amount [Float]
|
|
538
|
+
# @param period_ending_before [Time]
|
|
539
|
+
# @param period_starting_at [Time]
|
|
540
|
+
end
|
|
541
|
+
end
|
|
403
542
|
end
|
|
404
543
|
end
|
|
405
544
|
end
|