metronome-sdk 3.7.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 +38 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
- data/lib/metronome_sdk/models/commit.rb +10 -1
- data/lib/metronome_sdk/models/contract_v2.rb +290 -7
- data/lib/metronome_sdk/models/contract_without_amendments.rb +178 -4
- 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 +10 -2
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +3 -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 +17 -4
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +290 -10
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +178 -4
- 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 +279 -10
- data/lib/metronome_sdk/models/v1/package_list_response.rb +264 -7
- data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +264 -7
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +515 -9
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +456 -8
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +456 -8
- 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 +68 -1
- 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/version.rb +1 -1
- data/lib/metronome_sdk.rb +2 -0
- data/rbi/metronome_sdk/models/commit.rbi +13 -0
- data/rbi/metronome_sdk/models/contract_v2.rbi +715 -3
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +463 -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 +11 -1
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +4 -0
- 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 +27 -6
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +719 -9
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +463 -0
- 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 +706 -9
- data/rbi/metronome_sdk/models/v1/package_list_response.rbi +693 -3
- data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +693 -3
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1333 -40
- data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +1204 -67
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1204 -67
- 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 +70 -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/sig/metronome_sdk/models/commit.rbs +7 -0
- data/sig/metronome_sdk/models/contract_v2.rbs +278 -5
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +169 -2
- data/sig/metronome_sdk/models/credit.rbs +7 -0
- data/sig/metronome_sdk/models/override.rbs +7 -0
- 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 +7 -0
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +278 -5
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +167 -2
- 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 +271 -5
- data/sig/metronome_sdk/models/v1/package_list_response.rbs +265 -5
- data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +263 -5
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +468 -5
- data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +428 -5
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +427 -5
- data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/contracts.rbs +13 -0
- data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
- metadata +8 -2
|
@@ -60,6 +60,10 @@ module MetronomeSDK
|
|
|
60
60
|
MetronomeSDK::V1::AlertCreateParams::AlertType::OrSymbol,
|
|
61
61
|
name: String,
|
|
62
62
|
threshold: Float,
|
|
63
|
+
alert_specifiers:
|
|
64
|
+
T::Array[
|
|
65
|
+
MetronomeSDK::V1::AlertCreateParams::AlertSpecifier::OrHash
|
|
66
|
+
],
|
|
63
67
|
billable_metric_id: String,
|
|
64
68
|
credit_grant_type_filters: T::Array[String],
|
|
65
69
|
credit_type_id: String,
|
|
@@ -88,6 +92,10 @@ module MetronomeSDK
|
|
|
88
92
|
# type, this number may represent a financial amount, the days remaining, or a
|
|
89
93
|
# percentage reached.
|
|
90
94
|
threshold:,
|
|
95
|
+
# Can be used with only `low_remaining_contract_credit_and_commit_balance_reached`
|
|
96
|
+
# notifications. Defines the balances that are considered when evaluating the
|
|
97
|
+
# alert.
|
|
98
|
+
alert_specifiers: nil,
|
|
91
99
|
# For threshold notifications of type `usage_threshold_reached`, specifies which
|
|
92
100
|
# billable metric to track the usage for.
|
|
93
101
|
billable_metric_id: nil,
|
|
@@ -51,6 +51,10 @@ module MetronomeSDK
|
|
|
51
51
|
end
|
|
52
52
|
|
|
53
53
|
# Add a new rate
|
|
54
|
+
#
|
|
55
|
+
# This endpoint is heavily rate limited. For adding multiple rates, using the
|
|
56
|
+
# [addRates](https://docs.metronome.com/api-reference/rate-cards/add-rates)
|
|
57
|
+
# endpoint is strongly encouraged.
|
|
54
58
|
sig do
|
|
55
59
|
params(
|
|
56
60
|
entitled: T::Boolean,
|
|
@@ -616,6 +616,72 @@ module MetronomeSDK
|
|
|
616
616
|
)
|
|
617
617
|
end
|
|
618
618
|
|
|
619
|
+
# Get the history of subscription seats schedule over time for a given
|
|
620
|
+
# `subscription_id`. This endpoint provides information about seat assignments and
|
|
621
|
+
# total quantities for different time periods, allowing you to track how seat
|
|
622
|
+
# assignments have changed over time.
|
|
623
|
+
#
|
|
624
|
+
# ### Use this endpoint to:
|
|
625
|
+
#
|
|
626
|
+
# - Track changes to seat assignments over time
|
|
627
|
+
# - Get seat schedule for a specific date using the `covering_date` parameter
|
|
628
|
+
# - Get seat schedule history with optional date range filtering using
|
|
629
|
+
# `starting_at` and `ending_before`
|
|
630
|
+
#
|
|
631
|
+
# ### Key response fields:
|
|
632
|
+
#
|
|
633
|
+
# - data: array of seat schedule entries with time periods, quantity, and
|
|
634
|
+
# assignments
|
|
635
|
+
# - next_page: cursor for pagination to retrieve additional results
|
|
636
|
+
#
|
|
637
|
+
# ### Usage guidelines:
|
|
638
|
+
#
|
|
639
|
+
# - Use `covering_date` to get the active seats for a specific point in time.
|
|
640
|
+
# `covering_date` cannot be used with `starting_at` or `ending_before`.
|
|
641
|
+
# - Use `starting_at` and `ending_before` to filter results by time range.
|
|
642
|
+
# `starting_at` and `ending_before` cannot be used with `covering_date`.
|
|
643
|
+
# - Maximum limit is 10 seat schedule entries per request
|
|
644
|
+
# - Results are ordered by `starting_at` timestamp
|
|
645
|
+
sig do
|
|
646
|
+
params(
|
|
647
|
+
contract_id: String,
|
|
648
|
+
customer_id: String,
|
|
649
|
+
subscription_id: String,
|
|
650
|
+
covering_date: T.nilable(Time),
|
|
651
|
+
cursor: T.nilable(String),
|
|
652
|
+
ending_before: T.nilable(Time),
|
|
653
|
+
limit: T.nilable(Integer),
|
|
654
|
+
starting_at: T.nilable(Time),
|
|
655
|
+
request_options: MetronomeSDK::RequestOptions::OrHash
|
|
656
|
+
).returns(
|
|
657
|
+
MetronomeSDK::Models::V1::ContractGetSubscriptionSeatsHistoryResponse
|
|
658
|
+
)
|
|
659
|
+
end
|
|
660
|
+
def get_subscription_seats_history(
|
|
661
|
+
contract_id:,
|
|
662
|
+
customer_id:,
|
|
663
|
+
subscription_id:,
|
|
664
|
+
# Get the seats history segment for the covering date. Cannot be used with
|
|
665
|
+
# `starting_at` or `ending_before`.
|
|
666
|
+
covering_date: nil,
|
|
667
|
+
# Cursor for pagination. Use the value from the `next_page` field of the previous
|
|
668
|
+
# response to retrieve the next page of results.
|
|
669
|
+
cursor: nil,
|
|
670
|
+
# Include seats history segments that are active at or before this timestamp. Use
|
|
671
|
+
# with `starting_at` to get a specific time range. If not set, there's no upper
|
|
672
|
+
# bound.
|
|
673
|
+
ending_before: nil,
|
|
674
|
+
# Maximum number of seat schedule entries to return. Defaults to 10. Required
|
|
675
|
+
# range: 1 <= x <= 10.
|
|
676
|
+
limit: nil,
|
|
677
|
+
# Include seats history segments that are active at or after this timestamp. Use
|
|
678
|
+
# with `ending_before` to get a specific time range. If not set, there's no lower
|
|
679
|
+
# bound.
|
|
680
|
+
starting_at: nil,
|
|
681
|
+
request_options: {}
|
|
682
|
+
)
|
|
683
|
+
end
|
|
684
|
+
|
|
619
685
|
# Retrieve a comprehensive view of all available balances (commits and credits)
|
|
620
686
|
# for a customer. This endpoint provides real-time visibility into prepaid funds,
|
|
621
687
|
# postpaid commitments, promotional credits, and other balance types that can
|
|
@@ -737,6 +803,7 @@ module MetronomeSDK
|
|
|
737
803
|
include_ledgers: T::Boolean,
|
|
738
804
|
limit: Integer,
|
|
739
805
|
seat_ids: T::Array[String],
|
|
806
|
+
skip_missing_seat_ids: T::Boolean,
|
|
740
807
|
starting_at: Time,
|
|
741
808
|
subscription_ids: T::Array[String],
|
|
742
809
|
request_options: MetronomeSDK::RequestOptions::OrHash
|
|
@@ -770,6 +837,9 @@ module MetronomeSDK
|
|
|
770
837
|
limit: nil,
|
|
771
838
|
# Optional filter to only include specific seats.
|
|
772
839
|
seat_ids: nil,
|
|
840
|
+
# When true, any seat_ids not found in contract subscriptions will be silently
|
|
841
|
+
# omitted from the response instead of returning a 400 error.
|
|
842
|
+
skip_missing_seat_ids: nil,
|
|
773
843
|
# Include only commits or credits with access effective on or after this date
|
|
774
844
|
# (cannot be used with covering_date).
|
|
775
845
|
starting_at: nil,
|
|
@@ -44,11 +44,11 @@ module MetronomeSDK
|
|
|
44
44
|
# - `null` - Notification has been archived
|
|
45
45
|
# - `triggered_by`: Additional context about what caused the notification to
|
|
46
46
|
# trigger (when applicable)
|
|
47
|
+
# - `updated_at`: Timestamp of when the `customer_status` was last updated
|
|
47
48
|
# - alert: Complete threshold notification configuration including:
|
|
48
49
|
# - Notification ID, name, and type
|
|
49
50
|
# - Current threshold values and credit type information
|
|
50
51
|
# - Notification status (enabled, disabled, or archived)
|
|
51
|
-
# - Last update timestamp
|
|
52
52
|
# - Any applied filters (credit grant types, custom fields, group values)
|
|
53
53
|
#
|
|
54
54
|
# ### Usage guidelines:
|
|
@@ -69,6 +69,10 @@ module MetronomeSDK
|
|
|
69
69
|
params(
|
|
70
70
|
alert_id: String,
|
|
71
71
|
customer_id: String,
|
|
72
|
+
alert_specifiers:
|
|
73
|
+
T::Array[
|
|
74
|
+
MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::OrHash
|
|
75
|
+
],
|
|
72
76
|
group_values:
|
|
73
77
|
T::Array[
|
|
74
78
|
MetronomeSDK::V1::Customers::AlertRetrieveParams::GroupValue::OrHash
|
|
@@ -87,6 +91,9 @@ module MetronomeSDK
|
|
|
87
91
|
alert_id:,
|
|
88
92
|
# The Metronome ID of the customer
|
|
89
93
|
customer_id:,
|
|
94
|
+
# Can be used with only `low_remaining_contract_credit_and_commit_balance_reached`
|
|
95
|
+
# notifications. Used to filter the alert by the custom field key-value pair.
|
|
96
|
+
alert_specifiers: nil,
|
|
90
97
|
# Only present for `spend_threshold_reached` notifications. Retrieve the
|
|
91
98
|
# notification for a specific group key-value pair.
|
|
92
99
|
group_values: nil,
|
|
@@ -132,6 +132,7 @@ module MetronomeSDK
|
|
|
132
132
|
status: String,
|
|
133
133
|
type:
|
|
134
134
|
MetronomeSDK::V1::Customers::InvoiceListParams::Type::OrSymbol,
|
|
135
|
+
webhook_notification_id: String,
|
|
135
136
|
request_options: MetronomeSDK::RequestOptions::OrHash
|
|
136
137
|
).returns(
|
|
137
138
|
MetronomeSDK::Internal::CursorPage[
|
|
@@ -166,6 +167,9 @@ module MetronomeSDK
|
|
|
166
167
|
status: nil,
|
|
167
168
|
# Query param: Filter invoices by type. Defaults to returning all invoice types.
|
|
168
169
|
type: nil,
|
|
170
|
+
# Query param: Indicates that this API request was triggered by a webhook
|
|
171
|
+
# notification with the provided ID.
|
|
172
|
+
webhook_notification_id: nil,
|
|
169
173
|
request_options: {}
|
|
170
174
|
)
|
|
171
175
|
end
|
|
@@ -30,8 +30,13 @@ module MetronomeSDK
|
|
|
30
30
|
#
|
|
31
31
|
# - Dashboard types: Choose from `invoices`, `usage`, or `commits_and_credits`
|
|
32
32
|
# - Customization options:
|
|
33
|
-
# - `dashboard_options`: Configure
|
|
34
|
-
#
|
|
33
|
+
# - `dashboard_options`: Configure dashboard behavior. For the invoices
|
|
34
|
+
# dashboard, supported keys include: `show_zero_usage_line_items`
|
|
35
|
+
# ("true"/"false"), `hide_voided_invoices` ("true"/"false"), `contract_id`
|
|
36
|
+
# (UUID, filters invoices by contract), `invoice_type` ("USAGE" or
|
|
37
|
+
# "SCHEDULED", filters by invoice type), `invoice_status_filter` ("VOID",
|
|
38
|
+
# "FINALIZED", "DRAFT", "FINALIZED_AND_DRAFT", or "ALL"), and
|
|
39
|
+
# `billable_status_filter` ("BILLABLE", "UNBILLABLE", or "ALL")
|
|
35
40
|
# - `color_overrides`: Match your brand's color palette
|
|
36
41
|
# - `bm_group_key_overrides`: Customize how dimensions are displayed (for the
|
|
37
42
|
# usage embeddable dashboard)
|
|
@@ -14,6 +14,7 @@ module MetronomeSDK
|
|
|
14
14
|
archived_at: Time,
|
|
15
15
|
balance: Float,
|
|
16
16
|
contract: MetronomeSDK::Commit::Contract,
|
|
17
|
+
created_by: String,
|
|
17
18
|
custom_fields: ::Hash[Symbol, String],
|
|
18
19
|
description: String,
|
|
19
20
|
hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
|
|
@@ -79,6 +80,10 @@ module MetronomeSDK
|
|
|
79
80
|
MetronomeSDK::Commit::Contract
|
|
80
81
|
) -> MetronomeSDK::Commit::Contract
|
|
81
82
|
|
|
83
|
+
attr_reader created_by: String?
|
|
84
|
+
|
|
85
|
+
def created_by=: (String) -> String
|
|
86
|
+
|
|
82
87
|
attr_reader custom_fields: ::Hash[Symbol, String]?
|
|
83
88
|
|
|
84
89
|
def custom_fields=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
|
|
@@ -182,6 +187,7 @@ module MetronomeSDK
|
|
|
182
187
|
?archived_at: Time,
|
|
183
188
|
?balance: Float,
|
|
184
189
|
?contract: MetronomeSDK::Commit::Contract,
|
|
190
|
+
?created_by: String,
|
|
185
191
|
?custom_fields: ::Hash[Symbol, String],
|
|
186
192
|
?description: String,
|
|
187
193
|
?hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
|
|
@@ -215,6 +221,7 @@ module MetronomeSDK
|
|
|
215
221
|
archived_at: Time,
|
|
216
222
|
balance: Float,
|
|
217
223
|
contract: MetronomeSDK::Commit::Contract,
|
|
224
|
+
created_by: String,
|
|
218
225
|
custom_fields: ::Hash[Symbol, String],
|
|
219
226
|
description: String,
|
|
220
227
|
hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
|