metronome-sdk 1.0.0 → 2.1.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 +91 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/errors.rb +25 -11
- data/lib/metronome_sdk/file_part.rb +10 -7
- data/lib/metronome_sdk/internal/body_cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +11 -7
- data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +34 -31
- data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
- data/lib/metronome_sdk/internal/type/enum.rb +25 -0
- data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
- data/lib/metronome_sdk/internal/util.rb +8 -7
- data/lib/metronome_sdk/models/contract.rb +1 -0
- data/lib/metronome_sdk/models/contract_v2.rb +275 -6
- data/lib/metronome_sdk/models/contract_without_amendments.rb +2 -2
- data/lib/metronome_sdk/models/hierarchy_configuration.rb +123 -2
- data/lib/metronome_sdk/models/payment_gate_config.rb +1 -0
- data/lib/metronome_sdk/models/payment_gate_config_v2.rb +1 -0
- data/lib/metronome_sdk/models/subscription.rb +95 -1
- data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +38 -36
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +157 -9
- data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
- data/lib/metronome_sdk/models/v1/customer_create_params.rb +11 -1
- data/lib/metronome_sdk/models/v1/customer_detail.rb +9 -1
- data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +19 -25
- data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
- data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
- data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +3 -3
- data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +12 -12
- data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -1
- data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +6 -1
- data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +41 -38
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +256 -16
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
- data/lib/metronome_sdk/models/v1/payment.rb +157 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
- data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
- data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +65 -0
- data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +73 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +9 -1
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +9 -1
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +219 -9
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +195 -8
- data/lib/metronome_sdk/resources/v1/alerts.rb +57 -53
- data/lib/metronome_sdk/resources/v1/contracts.rb +8 -5
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +70 -51
- data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +7 -4
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +57 -1
- data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
- data/lib/metronome_sdk/resources/v1/customers.rb +13 -8
- data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
- data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
- data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
- data/lib/metronome_sdk/resources/v1/settings.rb +55 -0
- data/lib/metronome_sdk/resources/v1/usage.rb +4 -2
- data/lib/metronome_sdk/resources/v1.rb +8 -0
- data/lib/metronome_sdk/resources/v2/contracts.rb +9 -3
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +17 -0
- data/rbi/metronome_sdk/errors.rbi +29 -2
- data/rbi/metronome_sdk/file_part.rbi +1 -1
- data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
- data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
- data/rbi/metronome_sdk/internal/util.rbi +1 -1
- data/rbi/metronome_sdk/models/contract.rbi +5 -0
- data/rbi/metronome_sdk/models/contract_v2.rbi +635 -10
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2 -2
- data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +286 -6
- data/rbi/metronome_sdk/models/payment_gate_config.rbi +5 -0
- data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +5 -0
- data/rbi/metronome_sdk/models/subscription.rbi +190 -0
- data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +51 -47
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +326 -10
- data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customer_detail.rbi +8 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +24 -32
- data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
- data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
- data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +14 -14
- data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +6 -0
- data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +53 -44
- data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +462 -38
- data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
- data/rbi/metronome_sdk/models/v1/payment.rbi +324 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
- data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
- data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +115 -0
- data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +157 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +18 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +18 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +536 -12
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +462 -14
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +68 -64
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +73 -54
- data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +38 -1
- data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/customers.rbi +17 -11
- data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
- data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
- data/rbi/metronome_sdk/resources/v1/settings.rbi +47 -0
- data/rbi/metronome_sdk/resources/v1/usage.rbi +4 -2
- data/rbi/metronome_sdk/resources/v1.rbi +6 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +14 -0
- data/sig/metronome_sdk/errors.rbs +7 -0
- data/sig/metronome_sdk/file_part.rbs +1 -1
- data/sig/metronome_sdk/models/contract.rbs +2 -0
- data/sig/metronome_sdk/models/contract_v2.rbs +241 -12
- data/sig/metronome_sdk/models/hierarchy_configuration.rbs +87 -6
- data/sig/metronome_sdk/models/payment_gate_config.rbs +2 -1
- data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +2 -1
- data/sig/metronome_sdk/models/subscription.rbs +80 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +2 -1
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +91 -5
- data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customer_create_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
- data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
- data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/invoice.rbs +244 -19
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
- data/sig/metronome_sdk/models/v1/payment.rbs +198 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
- data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
- data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +54 -0
- data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +64 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +184 -7
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +221 -18
- data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
- data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
- data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
- data/sig/metronome_sdk/resources/v1/settings.rbs +19 -0
- data/sig/metronome_sdk/resources/v1.rbs +4 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -0
- metadata +53 -2
|
@@ -177,6 +177,8 @@ module MetronomeSDK
|
|
|
177
177
|
end
|
|
178
178
|
attr_writer :aws_region
|
|
179
179
|
|
|
180
|
+
# The collection method for the customer's invoices. NOTE:
|
|
181
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
180
182
|
sig do
|
|
181
183
|
returns(
|
|
182
184
|
T.nilable(
|
|
@@ -214,6 +216,8 @@ module MetronomeSDK
|
|
|
214
216
|
aws_is_subscription_product: nil,
|
|
215
217
|
aws_product_code: nil,
|
|
216
218
|
aws_region: nil,
|
|
219
|
+
# The collection method for the customer's invoices. NOTE:
|
|
220
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
217
221
|
stripe_collection_method: nil
|
|
218
222
|
)
|
|
219
223
|
end
|
|
@@ -288,6 +292,11 @@ module MetronomeSDK
|
|
|
288
292
|
:gcp_marketplace,
|
|
289
293
|
MetronomeSDK::V1::CustomerCreateParams::BillingConfig::BillingProviderType::TaggedSymbol
|
|
290
294
|
)
|
|
295
|
+
METRONOME =
|
|
296
|
+
T.let(
|
|
297
|
+
:metronome,
|
|
298
|
+
MetronomeSDK::V1::CustomerCreateParams::BillingConfig::BillingProviderType::TaggedSymbol
|
|
299
|
+
)
|
|
291
300
|
|
|
292
301
|
sig do
|
|
293
302
|
override.returns(
|
|
@@ -449,6 +458,8 @@ module MetronomeSDK
|
|
|
449
458
|
end
|
|
450
459
|
end
|
|
451
460
|
|
|
461
|
+
# The collection method for the customer's invoices. NOTE:
|
|
462
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
452
463
|
module StripeCollectionMethod
|
|
453
464
|
extend MetronomeSDK::Internal::Type::Enum
|
|
454
465
|
|
|
@@ -48,6 +48,10 @@ module MetronomeSDK
|
|
|
48
48
|
sig { returns(String) }
|
|
49
49
|
attr_accessor :name
|
|
50
50
|
|
|
51
|
+
# RFC 3339 timestamp indicating when the customer was last updated.
|
|
52
|
+
sig { returns(Time) }
|
|
53
|
+
attr_accessor :updated_at
|
|
54
|
+
|
|
51
55
|
# RFC 3339 timestamp indicating when the customer was archived. Null if the
|
|
52
56
|
# customer is active.
|
|
53
57
|
sig { returns(T.nilable(Time)) }
|
|
@@ -79,6 +83,7 @@ module MetronomeSDK
|
|
|
79
83
|
external_id: String,
|
|
80
84
|
ingest_aliases: T::Array[String],
|
|
81
85
|
name: String,
|
|
86
|
+
updated_at: Time,
|
|
82
87
|
archived_at: T.nilable(Time),
|
|
83
88
|
current_billable_status:
|
|
84
89
|
MetronomeSDK::V1::CustomerDetail::CurrentBillableStatus::OrHash
|
|
@@ -99,6 +104,8 @@ module MetronomeSDK
|
|
|
99
104
|
# in usage events
|
|
100
105
|
ingest_aliases:,
|
|
101
106
|
name:,
|
|
107
|
+
# RFC 3339 timestamp indicating when the customer was last updated.
|
|
108
|
+
updated_at:,
|
|
102
109
|
# RFC 3339 timestamp indicating when the customer was archived. Null if the
|
|
103
110
|
# customer is active.
|
|
104
111
|
archived_at: nil,
|
|
@@ -117,6 +124,7 @@ module MetronomeSDK
|
|
|
117
124
|
external_id: String,
|
|
118
125
|
ingest_aliases: T::Array[String],
|
|
119
126
|
name: String,
|
|
127
|
+
updated_at: Time,
|
|
120
128
|
archived_at: T.nilable(Time),
|
|
121
129
|
current_billable_status:
|
|
122
130
|
MetronomeSDK::V1::CustomerDetail::CurrentBillableStatus
|
|
@@ -18,6 +18,8 @@ module MetronomeSDK
|
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_accessor :customer_id
|
|
20
20
|
|
|
21
|
+
# Array of usage events to include in the preview calculation. Must contain at
|
|
22
|
+
# least one event in `merge` mode.
|
|
21
23
|
sig do
|
|
22
24
|
returns(
|
|
23
25
|
T::Array[MetronomeSDK::V1::CustomerPreviewEventsParams::Event]
|
|
@@ -25,9 +27,10 @@ module MetronomeSDK
|
|
|
25
27
|
end
|
|
26
28
|
attr_accessor :events
|
|
27
29
|
|
|
28
|
-
#
|
|
29
|
-
#
|
|
30
|
-
#
|
|
30
|
+
# Controls how the provided events are combined with existing usage data. Use
|
|
31
|
+
# `replace` to calculate the preview as if these are the only events for the
|
|
32
|
+
# customer, ignoring all historical usage. Use `merge` to combine these events
|
|
33
|
+
# with the customer's existing usage. Defaults to `replace`.
|
|
31
34
|
sig do
|
|
32
35
|
returns(
|
|
33
36
|
T.nilable(
|
|
@@ -44,7 +47,7 @@ module MetronomeSDK
|
|
|
44
47
|
end
|
|
45
48
|
attr_writer :mode
|
|
46
49
|
|
|
47
|
-
#
|
|
50
|
+
# When `true`, line items with zero quantity are excluded from the response.
|
|
48
51
|
sig { returns(T.nilable(T::Boolean)) }
|
|
49
52
|
attr_reader :skip_zero_qty_line_items
|
|
50
53
|
|
|
@@ -65,12 +68,15 @@ module MetronomeSDK
|
|
|
65
68
|
end
|
|
66
69
|
def self.new(
|
|
67
70
|
customer_id:,
|
|
71
|
+
# Array of usage events to include in the preview calculation. Must contain at
|
|
72
|
+
# least one event in `merge` mode.
|
|
68
73
|
events:,
|
|
69
|
-
#
|
|
70
|
-
#
|
|
71
|
-
#
|
|
74
|
+
# Controls how the provided events are combined with existing usage data. Use
|
|
75
|
+
# `replace` to calculate the preview as if these are the only events for the
|
|
76
|
+
# customer, ignoring all historical usage. Use `merge` to combine these events
|
|
77
|
+
# with the customer's existing usage. Defaults to `replace`.
|
|
72
78
|
mode: nil,
|
|
73
|
-
#
|
|
79
|
+
# When `true`, line items with zero quantity are excluded from the response.
|
|
74
80
|
skip_zero_qty_line_items: nil,
|
|
75
81
|
request_options: {}
|
|
76
82
|
)
|
|
@@ -104,15 +110,6 @@ module MetronomeSDK
|
|
|
104
110
|
sig { returns(String) }
|
|
105
111
|
attr_accessor :event_type
|
|
106
112
|
|
|
107
|
-
# This has no effect for preview events, but may be set for consistency with Event
|
|
108
|
-
# objects. They will be processed even if they do not match the customer's ID or
|
|
109
|
-
# ingest aliases.
|
|
110
|
-
sig { returns(T.nilable(String)) }
|
|
111
|
-
attr_reader :customer_id
|
|
112
|
-
|
|
113
|
-
sig { params(customer_id: String).void }
|
|
114
|
-
attr_writer :customer_id
|
|
115
|
-
|
|
116
113
|
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
117
114
|
attr_reader :properties
|
|
118
115
|
|
|
@@ -126,9 +123,9 @@ module MetronomeSDK
|
|
|
126
123
|
sig { params(timestamp: String).void }
|
|
127
124
|
attr_writer :timestamp
|
|
128
125
|
|
|
129
|
-
#
|
|
130
|
-
#
|
|
131
|
-
# request.
|
|
126
|
+
# Optional unique identifier for event deduplication. When provided, preview
|
|
127
|
+
# events are automatically deduplicated against historical events from the past 34
|
|
128
|
+
# days. Duplicate transaction IDs within the same request will return an error.
|
|
132
129
|
sig { returns(T.nilable(String)) }
|
|
133
130
|
attr_reader :transaction_id
|
|
134
131
|
|
|
@@ -138,7 +135,6 @@ module MetronomeSDK
|
|
|
138
135
|
sig do
|
|
139
136
|
params(
|
|
140
137
|
event_type: String,
|
|
141
|
-
customer_id: String,
|
|
142
138
|
properties: T::Hash[Symbol, T.anything],
|
|
143
139
|
timestamp: String,
|
|
144
140
|
transaction_id: String
|
|
@@ -146,16 +142,12 @@ module MetronomeSDK
|
|
|
146
142
|
end
|
|
147
143
|
def self.new(
|
|
148
144
|
event_type:,
|
|
149
|
-
# This has no effect for preview events, but may be set for consistency with Event
|
|
150
|
-
# objects. They will be processed even if they do not match the customer's ID or
|
|
151
|
-
# ingest aliases.
|
|
152
|
-
customer_id: nil,
|
|
153
145
|
properties: nil,
|
|
154
146
|
# RFC 3339 formatted. If not provided, the current time will be used.
|
|
155
147
|
timestamp: nil,
|
|
156
|
-
#
|
|
157
|
-
#
|
|
158
|
-
# request.
|
|
148
|
+
# Optional unique identifier for event deduplication. When provided, preview
|
|
149
|
+
# events are automatically deduplicated against historical events from the past 34
|
|
150
|
+
# days. Duplicate transaction IDs within the same request will return an error.
|
|
159
151
|
transaction_id: nil
|
|
160
152
|
)
|
|
161
153
|
end
|
|
@@ -164,7 +156,6 @@ module MetronomeSDK
|
|
|
164
156
|
override.returns(
|
|
165
157
|
{
|
|
166
158
|
event_type: String,
|
|
167
|
-
customer_id: String,
|
|
168
159
|
properties: T::Hash[Symbol, T.anything],
|
|
169
160
|
timestamp: String,
|
|
170
161
|
transaction_id: String
|
|
@@ -175,9 +166,10 @@ module MetronomeSDK
|
|
|
175
166
|
end
|
|
176
167
|
end
|
|
177
168
|
|
|
178
|
-
#
|
|
179
|
-
#
|
|
180
|
-
#
|
|
169
|
+
# Controls how the provided events are combined with existing usage data. Use
|
|
170
|
+
# `replace` to calculate the preview as if these are the only events for the
|
|
171
|
+
# customer, ignoring all historical usage. Use `merge` to combine these events
|
|
172
|
+
# with the customer's existing usage. Defaults to `replace`.
|
|
181
173
|
module Mode
|
|
182
174
|
extend MetronomeSDK::Internal::Type::Enum
|
|
183
175
|
|
|
@@ -12,21 +12,22 @@ module MetronomeSDK
|
|
|
12
12
|
)
|
|
13
13
|
end
|
|
14
14
|
|
|
15
|
-
sig { returns(MetronomeSDK::V1::Customers::Invoice) }
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
sig { params(data: MetronomeSDK::V1::Customers::Invoice::OrHash).void }
|
|
19
|
-
attr_writer :data
|
|
15
|
+
sig { returns(T::Array[MetronomeSDK::V1::Customers::Invoice]) }
|
|
16
|
+
attr_accessor :data
|
|
20
17
|
|
|
21
18
|
sig do
|
|
22
|
-
params(
|
|
23
|
-
T
|
|
24
|
-
)
|
|
19
|
+
params(
|
|
20
|
+
data: T::Array[MetronomeSDK::V1::Customers::Invoice::OrHash]
|
|
21
|
+
).returns(T.attached_class)
|
|
25
22
|
end
|
|
26
23
|
def self.new(data:)
|
|
27
24
|
end
|
|
28
25
|
|
|
29
|
-
sig
|
|
26
|
+
sig do
|
|
27
|
+
override.returns(
|
|
28
|
+
{ data: T::Array[MetronomeSDK::V1::Customers::Invoice] }
|
|
29
|
+
)
|
|
30
|
+
end
|
|
30
31
|
def to_hash
|
|
31
32
|
end
|
|
32
33
|
end
|
|
@@ -202,6 +202,11 @@ module MetronomeSDK
|
|
|
202
202
|
:gcp_marketplace,
|
|
203
203
|
MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider::TaggedSymbol
|
|
204
204
|
)
|
|
205
|
+
METRONOME =
|
|
206
|
+
T.let(
|
|
207
|
+
:metronome,
|
|
208
|
+
MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider::TaggedSymbol
|
|
209
|
+
)
|
|
205
210
|
|
|
206
211
|
sig do
|
|
207
212
|
override.returns(
|
|
@@ -241,6 +241,11 @@ module MetronomeSDK
|
|
|
241
241
|
:gcp_marketplace,
|
|
242
242
|
MetronomeSDK::V1::CustomerSetBillingConfigurationsParams::Data::BillingProvider::TaggedSymbol
|
|
243
243
|
)
|
|
244
|
+
METRONOME =
|
|
245
|
+
T.let(
|
|
246
|
+
:metronome,
|
|
247
|
+
MetronomeSDK::V1::CustomerSetBillingConfigurationsParams::Data::BillingProvider::TaggedSymbol
|
|
248
|
+
)
|
|
244
249
|
|
|
245
250
|
sig do
|
|
246
251
|
override.returns(
|
|
@@ -27,8 +27,8 @@ module MetronomeSDK
|
|
|
27
27
|
sig { params(next_page: String).void }
|
|
28
28
|
attr_writer :next_page
|
|
29
29
|
|
|
30
|
-
# Optionally filter by
|
|
31
|
-
# returned.
|
|
30
|
+
# Optionally filter by threshold notification status. If absent, only enabled
|
|
31
|
+
# notifications will be returned.
|
|
32
32
|
sig do
|
|
33
33
|
returns(
|
|
34
34
|
T.nilable(
|
|
@@ -66,8 +66,8 @@ module MetronomeSDK
|
|
|
66
66
|
customer_id:,
|
|
67
67
|
# Cursor that indicates where the next page of results should start.
|
|
68
68
|
next_page: nil,
|
|
69
|
-
# Optionally filter by
|
|
70
|
-
# returned.
|
|
69
|
+
# Optionally filter by threshold notification status. If absent, only enabled
|
|
70
|
+
# notifications will be returned.
|
|
71
71
|
alert_statuses: nil,
|
|
72
72
|
request_options: {}
|
|
73
73
|
)
|
|
@@ -16,7 +16,7 @@ module MetronomeSDK
|
|
|
16
16
|
)
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
# The Metronome ID of the
|
|
19
|
+
# The Metronome ID of the threshold notification
|
|
20
20
|
sig { returns(String) }
|
|
21
21
|
attr_accessor :alert_id
|
|
22
22
|
|
|
@@ -32,7 +32,7 @@ module MetronomeSDK
|
|
|
32
32
|
).returns(T.attached_class)
|
|
33
33
|
end
|
|
34
34
|
def self.new(
|
|
35
|
-
# The Metronome ID of the
|
|
35
|
+
# The Metronome ID of the threshold notification
|
|
36
36
|
alert_id:,
|
|
37
37
|
# The Metronome ID of the customer
|
|
38
38
|
customer_id:,
|
|
@@ -16,7 +16,7 @@ module MetronomeSDK
|
|
|
16
16
|
)
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
# The Metronome ID of the
|
|
19
|
+
# The Metronome ID of the threshold notification
|
|
20
20
|
sig { returns(String) }
|
|
21
21
|
attr_accessor :alert_id
|
|
22
22
|
|
|
@@ -24,8 +24,8 @@ module MetronomeSDK
|
|
|
24
24
|
sig { returns(String) }
|
|
25
25
|
attr_accessor :customer_id
|
|
26
26
|
|
|
27
|
-
# Only present for `spend_threshold_reached`
|
|
28
|
-
# specific group key-value pair.
|
|
27
|
+
# Only present for `spend_threshold_reached` notifications. Retrieve the
|
|
28
|
+
# notification for a specific group key-value pair.
|
|
29
29
|
sig do
|
|
30
30
|
returns(
|
|
31
31
|
T.nilable(
|
|
@@ -47,8 +47,8 @@ module MetronomeSDK
|
|
|
47
47
|
end
|
|
48
48
|
attr_writer :group_values
|
|
49
49
|
|
|
50
|
-
# When parallel
|
|
51
|
-
# fetch
|
|
50
|
+
# When parallel threshold notifications are enabled during migration, this flag
|
|
51
|
+
# denotes whether to fetch notifications for plans or contracts.
|
|
52
52
|
sig do
|
|
53
53
|
returns(
|
|
54
54
|
T.nilable(
|
|
@@ -80,15 +80,15 @@ module MetronomeSDK
|
|
|
80
80
|
).returns(T.attached_class)
|
|
81
81
|
end
|
|
82
82
|
def self.new(
|
|
83
|
-
# The Metronome ID of the
|
|
83
|
+
# The Metronome ID of the threshold notification
|
|
84
84
|
alert_id:,
|
|
85
85
|
# The Metronome ID of the customer
|
|
86
86
|
customer_id:,
|
|
87
|
-
# Only present for `spend_threshold_reached`
|
|
88
|
-
# specific group key-value pair.
|
|
87
|
+
# Only present for `spend_threshold_reached` notifications. Retrieve the
|
|
88
|
+
# notification for a specific group key-value pair.
|
|
89
89
|
group_values: nil,
|
|
90
|
-
# When parallel
|
|
91
|
-
# fetch
|
|
90
|
+
# When parallel threshold notifications are enabled during migration, this flag
|
|
91
|
+
# denotes whether to fetch notifications for plans or contracts.
|
|
92
92
|
plans_or_contracts: nil,
|
|
93
93
|
request_options: {}
|
|
94
94
|
)
|
|
@@ -127,8 +127,8 @@ module MetronomeSDK
|
|
|
127
127
|
sig { returns(String) }
|
|
128
128
|
attr_accessor :value
|
|
129
129
|
|
|
130
|
-
# Scopes
|
|
131
|
-
# items. Only present for spend
|
|
130
|
+
# Scopes threshold notification evaluation to a specific presentation group key on
|
|
131
|
+
# individual line items. Only present for spend notifications.
|
|
132
132
|
sig { params(key: String, value: String).returns(T.attached_class) }
|
|
133
133
|
def self.new(key:, value:)
|
|
134
134
|
end
|
|
@@ -138,8 +138,8 @@ module MetronomeSDK
|
|
|
138
138
|
end
|
|
139
139
|
end
|
|
140
140
|
|
|
141
|
-
# When parallel
|
|
142
|
-
# fetch
|
|
141
|
+
# When parallel threshold notifications are enabled during migration, this flag
|
|
142
|
+
# denotes whether to fetch notifications for plans or contracts.
|
|
143
143
|
module PlansOrContracts
|
|
144
144
|
extend MetronomeSDK::Internal::Type::Enum
|
|
145
145
|
|
|
@@ -54,6 +54,8 @@ module MetronomeSDK
|
|
|
54
54
|
end
|
|
55
55
|
attr_writer :aws_region
|
|
56
56
|
|
|
57
|
+
# The collection method for the customer's invoices. NOTE:
|
|
58
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
57
59
|
sig do
|
|
58
60
|
returns(
|
|
59
61
|
T.nilable(
|
|
@@ -93,6 +95,8 @@ module MetronomeSDK
|
|
|
93
95
|
billing_provider_customer_id:,
|
|
94
96
|
aws_product_code: nil,
|
|
95
97
|
aws_region: nil,
|
|
98
|
+
# The collection method for the customer's invoices. NOTE:
|
|
99
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
96
100
|
stripe_collection_method: nil,
|
|
97
101
|
request_options: {}
|
|
98
102
|
)
|
|
@@ -169,6 +173,11 @@ module MetronomeSDK
|
|
|
169
173
|
:gcp_marketplace,
|
|
170
174
|
MetronomeSDK::V1::Customers::BillingConfigCreateParams::BillingProviderType::TaggedSymbol
|
|
171
175
|
)
|
|
176
|
+
METRONOME =
|
|
177
|
+
T.let(
|
|
178
|
+
:metronome,
|
|
179
|
+
MetronomeSDK::V1::Customers::BillingConfigCreateParams::BillingProviderType::TaggedSymbol
|
|
180
|
+
)
|
|
172
181
|
|
|
173
182
|
sig do
|
|
174
183
|
override.returns(
|
|
@@ -330,6 +339,8 @@ module MetronomeSDK
|
|
|
330
339
|
end
|
|
331
340
|
end
|
|
332
341
|
|
|
342
|
+
# The collection method for the customer's invoices. NOTE:
|
|
343
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
333
344
|
module StripeCollectionMethod
|
|
334
345
|
extend MetronomeSDK::Internal::Type::Enum
|
|
335
346
|
|
|
@@ -106,6 +106,11 @@ module MetronomeSDK
|
|
|
106
106
|
:gcp_marketplace,
|
|
107
107
|
MetronomeSDK::V1::Customers::BillingConfigDeleteParams::BillingProviderType::TaggedSymbol
|
|
108
108
|
)
|
|
109
|
+
METRONOME =
|
|
110
|
+
T.let(
|
|
111
|
+
:metronome,
|
|
112
|
+
MetronomeSDK::V1::Customers::BillingConfigDeleteParams::BillingProviderType::TaggedSymbol
|
|
113
|
+
)
|
|
109
114
|
|
|
110
115
|
sig do
|
|
111
116
|
override.returns(
|
|
@@ -106,6 +106,11 @@ module MetronomeSDK
|
|
|
106
106
|
:gcp_marketplace,
|
|
107
107
|
MetronomeSDK::V1::Customers::BillingConfigRetrieveParams::BillingProviderType::TaggedSymbol
|
|
108
108
|
)
|
|
109
|
+
METRONOME =
|
|
110
|
+
T.let(
|
|
111
|
+
:metronome,
|
|
112
|
+
MetronomeSDK::V1::Customers::BillingConfigRetrieveParams::BillingProviderType::TaggedSymbol
|
|
113
|
+
)
|
|
109
114
|
|
|
110
115
|
sig do
|
|
111
116
|
override.returns(
|
|
@@ -143,6 +143,8 @@ module MetronomeSDK
|
|
|
143
143
|
sig { params(billing_provider_customer_id: String).void }
|
|
144
144
|
attr_writer :billing_provider_customer_id
|
|
145
145
|
|
|
146
|
+
# The collection method for the customer's invoices. NOTE:
|
|
147
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
146
148
|
sig do
|
|
147
149
|
returns(
|
|
148
150
|
T.nilable(
|
|
@@ -197,6 +199,8 @@ module MetronomeSDK
|
|
|
197
199
|
azure_start_date: nil,
|
|
198
200
|
azure_subscription_status: nil,
|
|
199
201
|
billing_provider_customer_id: nil,
|
|
202
|
+
# The collection method for the customer's invoices. NOTE:
|
|
203
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
200
204
|
stripe_collection_method: nil
|
|
201
205
|
)
|
|
202
206
|
end
|
|
@@ -416,6 +420,8 @@ module MetronomeSDK
|
|
|
416
420
|
end
|
|
417
421
|
end
|
|
418
422
|
|
|
423
|
+
# The collection method for the customer's invoices. NOTE:
|
|
424
|
+
# `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
|
|
419
425
|
module StripeCollectionMethod
|
|
420
426
|
extend MetronomeSDK::Internal::Type::Enum
|
|
421
427
|
|
|
@@ -95,7 +95,7 @@ module MetronomeSDK
|
|
|
95
95
|
|
|
96
96
|
# The contract that this commit will be billed on. This is required for "POSTPAID"
|
|
97
97
|
# commits and for "PREPAID" commits unless there is no invoice schedule above
|
|
98
|
-
# (i.e., the commit is 'free').
|
|
98
|
+
# (i.e., the commit is 'free'), or if do_not_invoice is set to true.
|
|
99
99
|
sig { returns(T.nilable(String)) }
|
|
100
100
|
attr_reader :invoice_contract_id
|
|
101
101
|
|
|
@@ -243,7 +243,7 @@ module MetronomeSDK
|
|
|
243
243
|
description: nil,
|
|
244
244
|
# The contract that this commit will be billed on. This is required for "POSTPAID"
|
|
245
245
|
# commits and for "PREPAID" commits unless there is no invoice schedule above
|
|
246
|
-
# (i.e., the commit is 'free').
|
|
246
|
+
# (i.e., the commit is 'free'), or if do_not_invoice is set to true.
|
|
247
247
|
invoice_contract_id: nil,
|
|
248
248
|
# Required for "POSTPAID" commits: the true up invoice will be generated at this
|
|
249
249
|
# time and only one schedule item is allowed; the total must match
|