metronome-sdk 3.8.0 → 3.10.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 +34 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/models/commit.rb +9 -1
- data/lib/metronome_sdk/models/contract.rb +46 -16
- data/lib/metronome_sdk/models/contract_v2.rb +378 -15
- data/lib/metronome_sdk/models/contract_without_amendments.rb +8 -5
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +8 -5
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +73 -18
- data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +27 -1
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +32 -5
- data/lib/metronome_sdk/models/v1/package_create_params.rb +8 -4
- data/lib/metronome_sdk/models/v1/package_list_response.rb +8 -4
- data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +8 -4
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -1
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +11 -1
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +14 -8
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +8 -4
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +8 -4
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +11 -14
- data/lib/metronome_sdk/resources/v1/dashboards.rb +6 -9
- data/lib/metronome_sdk/resources/v2/contracts.rb +6 -2
- data/lib/metronome_sdk/version.rb +1 -1
- data/rbi/metronome_sdk/models/commit.rbi +11 -0
- data/rbi/metronome_sdk/models/contract.rbi +47 -22
- data/rbi/metronome_sdk/models/contract_v2.rbi +711 -19
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +12 -11
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +12 -11
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +72 -43
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_params.rbi +67 -0
- data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +96 -5
- data/rbi/metronome_sdk/models/v1/package_create_params.rbi +12 -6
- data/rbi/metronome_sdk/models/v1/package_list_response.rbi +12 -6
- data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +12 -6
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +12 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +12 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +28 -18
- data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +12 -6
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +12 -6
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +15 -13
- data/rbi/metronome_sdk/resources/v1/dashboards.rbi +6 -9
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +10 -0
- data/sig/metronome_sdk/models/commit.rbs +7 -0
- data/sig/metronome_sdk/models/contract.rbs +22 -11
- data/sig/metronome_sdk/models/contract_v2.rbs +289 -5
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +1 -2
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1 -2
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +31 -17
- data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +28 -0
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +39 -4
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +5 -0
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +5 -0
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +12 -14
- data/sig/metronome_sdk/resources/v1/contracts/rate_cards.rbs +1 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +2 -0
- metadata +2 -2
|
@@ -55,6 +55,29 @@ module MetronomeSDK
|
|
|
55
55
|
sig { params(archived_at: Time).void }
|
|
56
56
|
attr_writer :archived_at
|
|
57
57
|
|
|
58
|
+
# The schedule of billing provider configuration changes on the contract, ordered
|
|
59
|
+
# by effective_at ascending.
|
|
60
|
+
sig do
|
|
61
|
+
returns(
|
|
62
|
+
T.nilable(
|
|
63
|
+
T::Array[
|
|
64
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule
|
|
65
|
+
]
|
|
66
|
+
)
|
|
67
|
+
)
|
|
68
|
+
end
|
|
69
|
+
attr_reader :billing_provider_configuration_schedule
|
|
70
|
+
|
|
71
|
+
sig do
|
|
72
|
+
params(
|
|
73
|
+
billing_provider_configuration_schedule:
|
|
74
|
+
T::Array[
|
|
75
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::OrHash
|
|
76
|
+
]
|
|
77
|
+
).void
|
|
78
|
+
end
|
|
79
|
+
attr_writer :billing_provider_configuration_schedule
|
|
80
|
+
|
|
58
81
|
sig { returns(T.nilable(T::Array[MetronomeSDK::ContractV2::Credit])) }
|
|
59
82
|
attr_reader :credits
|
|
60
83
|
|
|
@@ -70,7 +93,6 @@ module MetronomeSDK
|
|
|
70
93
|
sig { params(custom_fields: T::Hash[Symbol, String]).void }
|
|
71
94
|
attr_writer :custom_fields
|
|
72
95
|
|
|
73
|
-
# This field's availability is dependent on your client's configuration.
|
|
74
96
|
sig do
|
|
75
97
|
returns(
|
|
76
98
|
T.nilable(
|
|
@@ -246,6 +268,29 @@ module MetronomeSDK
|
|
|
246
268
|
end
|
|
247
269
|
attr_writer :reseller_royalties
|
|
248
270
|
|
|
271
|
+
# The schedule of revenue system configuration changes on the contract, ordered by
|
|
272
|
+
# effective_at ascending.
|
|
273
|
+
sig do
|
|
274
|
+
returns(
|
|
275
|
+
T.nilable(
|
|
276
|
+
T::Array[
|
|
277
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule
|
|
278
|
+
]
|
|
279
|
+
)
|
|
280
|
+
)
|
|
281
|
+
end
|
|
282
|
+
attr_reader :revenue_system_configuration_schedule
|
|
283
|
+
|
|
284
|
+
sig do
|
|
285
|
+
params(
|
|
286
|
+
revenue_system_configuration_schedule:
|
|
287
|
+
T::Array[
|
|
288
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::OrHash
|
|
289
|
+
]
|
|
290
|
+
).void
|
|
291
|
+
end
|
|
292
|
+
attr_writer :revenue_system_configuration_schedule
|
|
293
|
+
|
|
249
294
|
# This field's availability is dependent on your client's configuration.
|
|
250
295
|
sig { returns(T.nilable(String)) }
|
|
251
296
|
attr_reader :salesforce_opportunity_id
|
|
@@ -342,6 +387,10 @@ module MetronomeSDK
|
|
|
342
387
|
usage_statement_schedule:
|
|
343
388
|
MetronomeSDK::ContractV2::UsageStatementSchedule::OrHash,
|
|
344
389
|
archived_at: Time,
|
|
390
|
+
billing_provider_configuration_schedule:
|
|
391
|
+
T::Array[
|
|
392
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::OrHash
|
|
393
|
+
],
|
|
345
394
|
credits: T::Array[MetronomeSDK::ContractV2::Credit::OrHash],
|
|
346
395
|
custom_fields: T::Hash[Symbol, String],
|
|
347
396
|
customer_billing_provider_configuration:
|
|
@@ -370,6 +419,10 @@ module MetronomeSDK
|
|
|
370
419
|
T::Array[MetronomeSDK::ContractV2::RecurringCredit::OrHash],
|
|
371
420
|
reseller_royalties:
|
|
372
421
|
T::Array[MetronomeSDK::ContractV2::ResellerRoyalty::OrHash],
|
|
422
|
+
revenue_system_configuration_schedule:
|
|
423
|
+
T::Array[
|
|
424
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::OrHash
|
|
425
|
+
],
|
|
373
426
|
salesforce_opportunity_id: String,
|
|
374
427
|
scheduled_charges_on_usage_invoices:
|
|
375
428
|
MetronomeSDK::ContractV2::ScheduledChargesOnUsageInvoices::OrSymbol,
|
|
@@ -396,10 +449,12 @@ module MetronomeSDK
|
|
|
396
449
|
usage_filter:,
|
|
397
450
|
usage_statement_schedule:,
|
|
398
451
|
archived_at: nil,
|
|
452
|
+
# The schedule of billing provider configuration changes on the contract, ordered
|
|
453
|
+
# by effective_at ascending.
|
|
454
|
+
billing_provider_configuration_schedule: nil,
|
|
399
455
|
credits: nil,
|
|
400
456
|
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
401
457
|
custom_fields: nil,
|
|
402
|
-
# This field's availability is dependent on your client's configuration.
|
|
403
458
|
customer_billing_provider_configuration: nil,
|
|
404
459
|
# This field's availability is dependent on your client's configuration.
|
|
405
460
|
discounts: nil,
|
|
@@ -429,6 +484,9 @@ module MetronomeSDK
|
|
|
429
484
|
recurring_credits: nil,
|
|
430
485
|
# This field's availability is dependent on your client's configuration.
|
|
431
486
|
reseller_royalties: nil,
|
|
487
|
+
# The schedule of revenue system configuration changes on the contract, ordered by
|
|
488
|
+
# effective_at ascending.
|
|
489
|
+
revenue_system_configuration_schedule: nil,
|
|
432
490
|
# This field's availability is dependent on your client's configuration.
|
|
433
491
|
salesforce_opportunity_id: nil,
|
|
434
492
|
# Determines which scheduled and commit charges to consolidate onto the Contract's
|
|
@@ -464,6 +522,10 @@ module MetronomeSDK
|
|
|
464
522
|
usage_statement_schedule:
|
|
465
523
|
MetronomeSDK::ContractV2::UsageStatementSchedule,
|
|
466
524
|
archived_at: Time,
|
|
525
|
+
billing_provider_configuration_schedule:
|
|
526
|
+
T::Array[
|
|
527
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule
|
|
528
|
+
],
|
|
467
529
|
credits: T::Array[MetronomeSDK::ContractV2::Credit],
|
|
468
530
|
custom_fields: T::Hash[Symbol, String],
|
|
469
531
|
customer_billing_provider_configuration:
|
|
@@ -489,6 +551,10 @@ module MetronomeSDK
|
|
|
489
551
|
T::Array[MetronomeSDK::ContractV2::RecurringCredit],
|
|
490
552
|
reseller_royalties:
|
|
491
553
|
T::Array[MetronomeSDK::ContractV2::ResellerRoyalty],
|
|
554
|
+
revenue_system_configuration_schedule:
|
|
555
|
+
T::Array[
|
|
556
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule
|
|
557
|
+
],
|
|
492
558
|
salesforce_opportunity_id: String,
|
|
493
559
|
scheduled_charges_on_usage_invoices:
|
|
494
560
|
MetronomeSDK::ContractV2::ScheduledChargesOnUsageInvoices::TaggedSymbol,
|
|
@@ -595,6 +661,13 @@ module MetronomeSDK
|
|
|
595
661
|
end
|
|
596
662
|
attr_writer :contract
|
|
597
663
|
|
|
664
|
+
# The ratio of the amount paid for the commit to the amount of credit granted.
|
|
665
|
+
sig { returns(T.nilable(Float)) }
|
|
666
|
+
attr_reader :cost_basis
|
|
667
|
+
|
|
668
|
+
sig { params(cost_basis: Float).void }
|
|
669
|
+
attr_writer :cost_basis
|
|
670
|
+
|
|
598
671
|
# The actor who created this commit. Omitted for system-generated commits such as
|
|
599
672
|
# recurring commits, rollover commits, and threshold commits.
|
|
600
673
|
sig { returns(T.nilable(String)) }
|
|
@@ -813,6 +886,7 @@ module MetronomeSDK
|
|
|
813
886
|
archived_at: Time,
|
|
814
887
|
balance: Float,
|
|
815
888
|
contract: MetronomeSDK::ContractV2::Commit::Contract::OrHash,
|
|
889
|
+
cost_basis: Float,
|
|
816
890
|
created_by: String,
|
|
817
891
|
custom_fields: T::Hash[Symbol, String],
|
|
818
892
|
description: String,
|
|
@@ -883,6 +957,8 @@ module MetronomeSDK
|
|
|
883
957
|
# included in the balance, including future-dated manual ledger entries.
|
|
884
958
|
balance: nil,
|
|
885
959
|
contract: nil,
|
|
960
|
+
# The ratio of the amount paid for the commit to the amount of credit granted.
|
|
961
|
+
cost_basis: nil,
|
|
886
962
|
# The actor who created this commit. Omitted for system-generated commits such as
|
|
887
963
|
# recurring commits, rollover commits, and threshold commits.
|
|
888
964
|
created_by: nil,
|
|
@@ -936,6 +1012,7 @@ module MetronomeSDK
|
|
|
936
1012
|
archived_at: Time,
|
|
937
1013
|
balance: Float,
|
|
938
1014
|
contract: MetronomeSDK::ContractV2::Commit::Contract,
|
|
1015
|
+
cost_basis: Float,
|
|
939
1016
|
created_by: String,
|
|
940
1017
|
custom_fields: T::Hash[Symbol, String],
|
|
941
1018
|
description: String,
|
|
@@ -3084,11 +3161,6 @@ module MetronomeSDK
|
|
|
3084
3161
|
end
|
|
3085
3162
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
3086
3163
|
|
|
3087
|
-
SUPERSEDE =
|
|
3088
|
-
T.let(
|
|
3089
|
-
:SUPERSEDE,
|
|
3090
|
-
MetronomeSDK::ContractV2::Transition::Type::TaggedSymbol
|
|
3091
|
-
)
|
|
3092
3164
|
RENEWAL =
|
|
3093
3165
|
T.let(
|
|
3094
3166
|
:RENEWAL,
|
|
@@ -3258,6 +3330,302 @@ module MetronomeSDK
|
|
|
3258
3330
|
end
|
|
3259
3331
|
end
|
|
3260
3332
|
|
|
3333
|
+
class BillingProviderConfigurationSchedule < MetronomeSDK::Internal::Type::BaseModel
|
|
3334
|
+
OrHash =
|
|
3335
|
+
T.type_alias do
|
|
3336
|
+
T.any(
|
|
3337
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule,
|
|
3338
|
+
MetronomeSDK::Internal::AnyHash
|
|
3339
|
+
)
|
|
3340
|
+
end
|
|
3341
|
+
|
|
3342
|
+
sig do
|
|
3343
|
+
returns(
|
|
3344
|
+
T.nilable(
|
|
3345
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration
|
|
3346
|
+
)
|
|
3347
|
+
)
|
|
3348
|
+
end
|
|
3349
|
+
attr_reader :billing_provider_configuration
|
|
3350
|
+
|
|
3351
|
+
sig do
|
|
3352
|
+
params(
|
|
3353
|
+
billing_provider_configuration:
|
|
3354
|
+
T.nilable(
|
|
3355
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::OrHash
|
|
3356
|
+
)
|
|
3357
|
+
).void
|
|
3358
|
+
end
|
|
3359
|
+
attr_writer :billing_provider_configuration
|
|
3360
|
+
|
|
3361
|
+
# The date this billing provider configuration became or becomes active.
|
|
3362
|
+
sig { returns(Time) }
|
|
3363
|
+
attr_accessor :effective_at
|
|
3364
|
+
|
|
3365
|
+
# The date this billing provider configuration is superseded by the next entry.
|
|
3366
|
+
# Null for the last entry in the schedule.
|
|
3367
|
+
sig { returns(T.nilable(Time)) }
|
|
3368
|
+
attr_reader :effective_until
|
|
3369
|
+
|
|
3370
|
+
sig { params(effective_until: Time).void }
|
|
3371
|
+
attr_writer :effective_until
|
|
3372
|
+
|
|
3373
|
+
sig do
|
|
3374
|
+
params(
|
|
3375
|
+
billing_provider_configuration:
|
|
3376
|
+
T.nilable(
|
|
3377
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::OrHash
|
|
3378
|
+
),
|
|
3379
|
+
effective_at: Time,
|
|
3380
|
+
effective_until: Time
|
|
3381
|
+
).returns(T.attached_class)
|
|
3382
|
+
end
|
|
3383
|
+
def self.new(
|
|
3384
|
+
billing_provider_configuration:,
|
|
3385
|
+
# The date this billing provider configuration became or becomes active.
|
|
3386
|
+
effective_at:,
|
|
3387
|
+
# The date this billing provider configuration is superseded by the next entry.
|
|
3388
|
+
# Null for the last entry in the schedule.
|
|
3389
|
+
effective_until: nil
|
|
3390
|
+
)
|
|
3391
|
+
end
|
|
3392
|
+
|
|
3393
|
+
sig do
|
|
3394
|
+
override.returns(
|
|
3395
|
+
{
|
|
3396
|
+
billing_provider_configuration:
|
|
3397
|
+
T.nilable(
|
|
3398
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration
|
|
3399
|
+
),
|
|
3400
|
+
effective_at: Time,
|
|
3401
|
+
effective_until: Time
|
|
3402
|
+
}
|
|
3403
|
+
)
|
|
3404
|
+
end
|
|
3405
|
+
def to_hash
|
|
3406
|
+
end
|
|
3407
|
+
|
|
3408
|
+
class BillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
3409
|
+
OrHash =
|
|
3410
|
+
T.type_alias do
|
|
3411
|
+
T.any(
|
|
3412
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration,
|
|
3413
|
+
MetronomeSDK::Internal::AnyHash
|
|
3414
|
+
)
|
|
3415
|
+
end
|
|
3416
|
+
|
|
3417
|
+
# ID of this configuration; can be provided as the
|
|
3418
|
+
# billing_provider_configuration_id when creating a contract.
|
|
3419
|
+
sig { returns(String) }
|
|
3420
|
+
attr_accessor :id
|
|
3421
|
+
|
|
3422
|
+
sig { returns(T.nilable(Time)) }
|
|
3423
|
+
attr_accessor :archived_at
|
|
3424
|
+
|
|
3425
|
+
# The billing provider set for this configuration.
|
|
3426
|
+
sig do
|
|
3427
|
+
returns(
|
|
3428
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3429
|
+
)
|
|
3430
|
+
end
|
|
3431
|
+
attr_accessor :billing_provider
|
|
3432
|
+
|
|
3433
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
3434
|
+
# to the billing provider.
|
|
3435
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
3436
|
+
attr_accessor :configuration
|
|
3437
|
+
|
|
3438
|
+
sig { returns(String) }
|
|
3439
|
+
attr_accessor :customer_id
|
|
3440
|
+
|
|
3441
|
+
# The method to use for delivering invoices to this customer.
|
|
3442
|
+
sig do
|
|
3443
|
+
returns(
|
|
3444
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3445
|
+
)
|
|
3446
|
+
end
|
|
3447
|
+
attr_accessor :delivery_method
|
|
3448
|
+
|
|
3449
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
3450
|
+
# to the delivery method.
|
|
3451
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
3452
|
+
attr_accessor :delivery_method_configuration
|
|
3453
|
+
|
|
3454
|
+
# ID of the delivery method to use for this customer.
|
|
3455
|
+
sig { returns(String) }
|
|
3456
|
+
attr_accessor :delivery_method_id
|
|
3457
|
+
|
|
3458
|
+
sig do
|
|
3459
|
+
params(
|
|
3460
|
+
id: String,
|
|
3461
|
+
archived_at: T.nilable(Time),
|
|
3462
|
+
billing_provider:
|
|
3463
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::OrSymbol,
|
|
3464
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
3465
|
+
customer_id: String,
|
|
3466
|
+
delivery_method:
|
|
3467
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::OrSymbol,
|
|
3468
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
3469
|
+
delivery_method_id: String
|
|
3470
|
+
).returns(T.attached_class)
|
|
3471
|
+
end
|
|
3472
|
+
def self.new(
|
|
3473
|
+
# ID of this configuration; can be provided as the
|
|
3474
|
+
# billing_provider_configuration_id when creating a contract.
|
|
3475
|
+
id:,
|
|
3476
|
+
archived_at:,
|
|
3477
|
+
# The billing provider set for this configuration.
|
|
3478
|
+
billing_provider:,
|
|
3479
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
3480
|
+
# to the billing provider.
|
|
3481
|
+
configuration:,
|
|
3482
|
+
customer_id:,
|
|
3483
|
+
# The method to use for delivering invoices to this customer.
|
|
3484
|
+
delivery_method:,
|
|
3485
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
3486
|
+
# to the delivery method.
|
|
3487
|
+
delivery_method_configuration:,
|
|
3488
|
+
# ID of the delivery method to use for this customer.
|
|
3489
|
+
delivery_method_id:
|
|
3490
|
+
)
|
|
3491
|
+
end
|
|
3492
|
+
|
|
3493
|
+
sig do
|
|
3494
|
+
override.returns(
|
|
3495
|
+
{
|
|
3496
|
+
id: String,
|
|
3497
|
+
archived_at: T.nilable(Time),
|
|
3498
|
+
billing_provider:
|
|
3499
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol,
|
|
3500
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
3501
|
+
customer_id: String,
|
|
3502
|
+
delivery_method:
|
|
3503
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol,
|
|
3504
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
3505
|
+
delivery_method_id: String
|
|
3506
|
+
}
|
|
3507
|
+
)
|
|
3508
|
+
end
|
|
3509
|
+
def to_hash
|
|
3510
|
+
end
|
|
3511
|
+
|
|
3512
|
+
# The billing provider set for this configuration.
|
|
3513
|
+
module BillingProvider
|
|
3514
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
3515
|
+
|
|
3516
|
+
TaggedSymbol =
|
|
3517
|
+
T.type_alias do
|
|
3518
|
+
T.all(
|
|
3519
|
+
Symbol,
|
|
3520
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider
|
|
3521
|
+
)
|
|
3522
|
+
end
|
|
3523
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
3524
|
+
|
|
3525
|
+
AWS_MARKETPLACE =
|
|
3526
|
+
T.let(
|
|
3527
|
+
:aws_marketplace,
|
|
3528
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3529
|
+
)
|
|
3530
|
+
STRIPE =
|
|
3531
|
+
T.let(
|
|
3532
|
+
:stripe,
|
|
3533
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3534
|
+
)
|
|
3535
|
+
NETSUITE =
|
|
3536
|
+
T.let(
|
|
3537
|
+
:netsuite,
|
|
3538
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3539
|
+
)
|
|
3540
|
+
CUSTOM =
|
|
3541
|
+
T.let(
|
|
3542
|
+
:custom,
|
|
3543
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3544
|
+
)
|
|
3545
|
+
AZURE_MARKETPLACE =
|
|
3546
|
+
T.let(
|
|
3547
|
+
:azure_marketplace,
|
|
3548
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3549
|
+
)
|
|
3550
|
+
QUICKBOOKS_ONLINE =
|
|
3551
|
+
T.let(
|
|
3552
|
+
:quickbooks_online,
|
|
3553
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3554
|
+
)
|
|
3555
|
+
WORKDAY =
|
|
3556
|
+
T.let(
|
|
3557
|
+
:workday,
|
|
3558
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3559
|
+
)
|
|
3560
|
+
GCP_MARKETPLACE =
|
|
3561
|
+
T.let(
|
|
3562
|
+
:gcp_marketplace,
|
|
3563
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3564
|
+
)
|
|
3565
|
+
METRONOME =
|
|
3566
|
+
T.let(
|
|
3567
|
+
:metronome,
|
|
3568
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3569
|
+
)
|
|
3570
|
+
|
|
3571
|
+
sig do
|
|
3572
|
+
override.returns(
|
|
3573
|
+
T::Array[
|
|
3574
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3575
|
+
]
|
|
3576
|
+
)
|
|
3577
|
+
end
|
|
3578
|
+
def self.values
|
|
3579
|
+
end
|
|
3580
|
+
end
|
|
3581
|
+
|
|
3582
|
+
# The method to use for delivering invoices to this customer.
|
|
3583
|
+
module DeliveryMethod
|
|
3584
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
3585
|
+
|
|
3586
|
+
TaggedSymbol =
|
|
3587
|
+
T.type_alias do
|
|
3588
|
+
T.all(
|
|
3589
|
+
Symbol,
|
|
3590
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod
|
|
3591
|
+
)
|
|
3592
|
+
end
|
|
3593
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
3594
|
+
|
|
3595
|
+
DIRECT_TO_BILLING_PROVIDER =
|
|
3596
|
+
T.let(
|
|
3597
|
+
:direct_to_billing_provider,
|
|
3598
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3599
|
+
)
|
|
3600
|
+
AWS_SQS =
|
|
3601
|
+
T.let(
|
|
3602
|
+
:aws_sqs,
|
|
3603
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3604
|
+
)
|
|
3605
|
+
TACKLE =
|
|
3606
|
+
T.let(
|
|
3607
|
+
:tackle,
|
|
3608
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3609
|
+
)
|
|
3610
|
+
AWS_SNS =
|
|
3611
|
+
T.let(
|
|
3612
|
+
:aws_sns,
|
|
3613
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3614
|
+
)
|
|
3615
|
+
|
|
3616
|
+
sig do
|
|
3617
|
+
override.returns(
|
|
3618
|
+
T::Array[
|
|
3619
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3620
|
+
]
|
|
3621
|
+
)
|
|
3622
|
+
end
|
|
3623
|
+
def self.values
|
|
3624
|
+
end
|
|
3625
|
+
end
|
|
3626
|
+
end
|
|
3627
|
+
end
|
|
3628
|
+
|
|
3261
3629
|
class Credit < MetronomeSDK::Internal::Type::BaseModel
|
|
3262
3630
|
OrHash =
|
|
3263
3631
|
T.type_alias do
|
|
@@ -4473,10 +4841,15 @@ module MetronomeSDK
|
|
|
4473
4841
|
)
|
|
4474
4842
|
end
|
|
4475
4843
|
|
|
4476
|
-
# ID of
|
|
4844
|
+
# ID of this configuration; can be provided as the
|
|
4845
|
+
# billing_provider_configuration_id when creating a contract.
|
|
4477
4846
|
sig { returns(String) }
|
|
4478
4847
|
attr_accessor :id
|
|
4479
4848
|
|
|
4849
|
+
sig { returns(T.nilable(Time)) }
|
|
4850
|
+
attr_accessor :archived_at
|
|
4851
|
+
|
|
4852
|
+
# The billing provider set for this configuration.
|
|
4480
4853
|
sig do
|
|
4481
4854
|
returns(
|
|
4482
4855
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
@@ -4484,6 +4857,15 @@ module MetronomeSDK
|
|
|
4484
4857
|
end
|
|
4485
4858
|
attr_accessor :billing_provider
|
|
4486
4859
|
|
|
4860
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
4861
|
+
# to the billing provider.
|
|
4862
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
4863
|
+
attr_accessor :configuration
|
|
4864
|
+
|
|
4865
|
+
sig { returns(String) }
|
|
4866
|
+
attr_accessor :customer_id
|
|
4867
|
+
|
|
4868
|
+
# The method to use for delivering invoices to this customer.
|
|
4487
4869
|
sig do
|
|
4488
4870
|
returns(
|
|
4489
4871
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
@@ -4491,21 +4873,47 @@ module MetronomeSDK
|
|
|
4491
4873
|
end
|
|
4492
4874
|
attr_accessor :delivery_method
|
|
4493
4875
|
|
|
4494
|
-
#
|
|
4876
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
4877
|
+
# to the delivery method.
|
|
4878
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
4879
|
+
attr_accessor :delivery_method_configuration
|
|
4880
|
+
|
|
4881
|
+
# ID of the delivery method to use for this customer.
|
|
4882
|
+
sig { returns(String) }
|
|
4883
|
+
attr_accessor :delivery_method_id
|
|
4884
|
+
|
|
4495
4885
|
sig do
|
|
4496
4886
|
params(
|
|
4497
4887
|
id: String,
|
|
4888
|
+
archived_at: T.nilable(Time),
|
|
4498
4889
|
billing_provider:
|
|
4499
4890
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::BillingProvider::OrSymbol,
|
|
4891
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
4892
|
+
customer_id: String,
|
|
4500
4893
|
delivery_method:
|
|
4501
|
-
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::OrSymbol
|
|
4894
|
+
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::OrSymbol,
|
|
4895
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
4896
|
+
delivery_method_id: String
|
|
4502
4897
|
).returns(T.attached_class)
|
|
4503
4898
|
end
|
|
4504
4899
|
def self.new(
|
|
4505
|
-
# ID of
|
|
4900
|
+
# ID of this configuration; can be provided as the
|
|
4901
|
+
# billing_provider_configuration_id when creating a contract.
|
|
4506
4902
|
id:,
|
|
4903
|
+
archived_at:,
|
|
4904
|
+
# The billing provider set for this configuration.
|
|
4507
4905
|
billing_provider:,
|
|
4508
|
-
|
|
4906
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
4907
|
+
# to the billing provider.
|
|
4908
|
+
configuration:,
|
|
4909
|
+
customer_id:,
|
|
4910
|
+
# The method to use for delivering invoices to this customer.
|
|
4911
|
+
delivery_method:,
|
|
4912
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
4913
|
+
# to the delivery method.
|
|
4914
|
+
delivery_method_configuration:,
|
|
4915
|
+
# ID of the delivery method to use for this customer.
|
|
4916
|
+
delivery_method_id:
|
|
4509
4917
|
)
|
|
4510
4918
|
end
|
|
4511
4919
|
|
|
@@ -4513,16 +4921,22 @@ module MetronomeSDK
|
|
|
4513
4921
|
override.returns(
|
|
4514
4922
|
{
|
|
4515
4923
|
id: String,
|
|
4924
|
+
archived_at: T.nilable(Time),
|
|
4516
4925
|
billing_provider:
|
|
4517
4926
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol,
|
|
4927
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
4928
|
+
customer_id: String,
|
|
4518
4929
|
delivery_method:
|
|
4519
|
-
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
4930
|
+
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol,
|
|
4931
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
4932
|
+
delivery_method_id: String
|
|
4520
4933
|
}
|
|
4521
4934
|
)
|
|
4522
4935
|
end
|
|
4523
4936
|
def to_hash
|
|
4524
4937
|
end
|
|
4525
4938
|
|
|
4939
|
+
# The billing provider set for this configuration.
|
|
4526
4940
|
module BillingProvider
|
|
4527
4941
|
extend MetronomeSDK::Internal::Type::Enum
|
|
4528
4942
|
|
|
@@ -4592,6 +5006,7 @@ module MetronomeSDK
|
|
|
4592
5006
|
end
|
|
4593
5007
|
end
|
|
4594
5008
|
|
|
5009
|
+
# The method to use for delivering invoices to this customer.
|
|
4595
5010
|
module DeliveryMethod
|
|
4596
5011
|
extend MetronomeSDK::Internal::Type::Enum
|
|
4597
5012
|
|
|
@@ -5362,7 +5777,8 @@ module MetronomeSDK
|
|
|
5362
5777
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
5363
5778
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
5364
5779
|
# be created aligned with the recurring commit's starting_at rather than the usage
|
|
5365
|
-
# invoice dates.
|
|
5780
|
+
# invoice dates. - Daily recurring commits have a limit of one per contract, and
|
|
5781
|
+
# are unable to be created with seat-based subscriptions
|
|
5366
5782
|
sig do
|
|
5367
5783
|
returns(
|
|
5368
5784
|
T.nilable(
|
|
@@ -5493,7 +5909,8 @@ module MetronomeSDK
|
|
|
5493
5909
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
5494
5910
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
5495
5911
|
# be created aligned with the recurring commit's starting_at rather than the usage
|
|
5496
|
-
# invoice dates.
|
|
5912
|
+
# invoice dates. - Daily recurring commits have a limit of one per contract, and
|
|
5913
|
+
# are unable to be created with seat-based subscriptions
|
|
5497
5914
|
recurrence_frequency: nil,
|
|
5498
5915
|
# Will be passed down to the individual commits. This controls how much of an
|
|
5499
5916
|
# individual unexpired commit will roll over upon contract transition. Must be
|
|
@@ -6087,7 +6504,8 @@ module MetronomeSDK
|
|
|
6087
6504
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
6088
6505
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
6089
6506
|
# be created aligned with the recurring commit's starting_at rather than the usage
|
|
6090
|
-
# invoice dates.
|
|
6507
|
+
# invoice dates. - Daily recurring commits have a limit of one per contract, and
|
|
6508
|
+
# are unable to be created with seat-based subscriptions
|
|
6091
6509
|
module RecurrenceFrequency
|
|
6092
6510
|
extend MetronomeSDK::Internal::Type::Enum
|
|
6093
6511
|
|
|
@@ -6314,7 +6732,8 @@ module MetronomeSDK
|
|
|
6314
6732
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
6315
6733
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
6316
6734
|
# be created aligned with the recurring commit's starting_at rather than the usage
|
|
6317
|
-
# invoice dates.
|
|
6735
|
+
# invoice dates. - Daily recurring commits have a limit of one per contract, and
|
|
6736
|
+
# are unable to be created with seat-based subscriptions
|
|
6318
6737
|
sig do
|
|
6319
6738
|
returns(
|
|
6320
6739
|
T.nilable(
|
|
@@ -6441,7 +6860,8 @@ module MetronomeSDK
|
|
|
6441
6860
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
6442
6861
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
6443
6862
|
# be created aligned with the recurring commit's starting_at rather than the usage
|
|
6444
|
-
# invoice dates.
|
|
6863
|
+
# invoice dates. - Daily recurring commits have a limit of one per contract, and
|
|
6864
|
+
# are unable to be created with seat-based subscriptions
|
|
6445
6865
|
recurrence_frequency: nil,
|
|
6446
6866
|
# Will be passed down to the individual commits. This controls how much of an
|
|
6447
6867
|
# individual unexpired commit will roll over upon contract transition. Must be
|
|
@@ -6884,7 +7304,8 @@ module MetronomeSDK
|
|
|
6884
7304
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
6885
7305
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
6886
7306
|
# be created aligned with the recurring commit's starting_at rather than the usage
|
|
6887
|
-
# invoice dates.
|
|
7307
|
+
# invoice dates. - Daily recurring commits have a limit of one per contract, and
|
|
7308
|
+
# are unable to be created with seat-based subscriptions
|
|
6888
7309
|
module RecurrenceFrequency
|
|
6889
7310
|
extend MetronomeSDK::Internal::Type::Enum
|
|
6890
7311
|
|
|
@@ -7209,6 +7630,277 @@ module MetronomeSDK
|
|
|
7209
7630
|
end
|
|
7210
7631
|
end
|
|
7211
7632
|
|
|
7633
|
+
class RevenueSystemConfigurationSchedule < MetronomeSDK::Internal::Type::BaseModel
|
|
7634
|
+
OrHash =
|
|
7635
|
+
T.type_alias do
|
|
7636
|
+
T.any(
|
|
7637
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule,
|
|
7638
|
+
MetronomeSDK::Internal::AnyHash
|
|
7639
|
+
)
|
|
7640
|
+
end
|
|
7641
|
+
|
|
7642
|
+
# The date this revenue system configuration became or becomes active.
|
|
7643
|
+
sig { returns(Time) }
|
|
7644
|
+
attr_accessor :effective_at
|
|
7645
|
+
|
|
7646
|
+
sig do
|
|
7647
|
+
returns(
|
|
7648
|
+
T.nilable(
|
|
7649
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration
|
|
7650
|
+
)
|
|
7651
|
+
)
|
|
7652
|
+
end
|
|
7653
|
+
attr_reader :revenue_system_configuration
|
|
7654
|
+
|
|
7655
|
+
sig do
|
|
7656
|
+
params(
|
|
7657
|
+
revenue_system_configuration:
|
|
7658
|
+
T.nilable(
|
|
7659
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::OrHash
|
|
7660
|
+
)
|
|
7661
|
+
).void
|
|
7662
|
+
end
|
|
7663
|
+
attr_writer :revenue_system_configuration
|
|
7664
|
+
|
|
7665
|
+
# The date this revenue system configuration is superseded by the next entry. Null
|
|
7666
|
+
# for the last entry in the schedule.
|
|
7667
|
+
sig { returns(T.nilable(Time)) }
|
|
7668
|
+
attr_reader :effective_until
|
|
7669
|
+
|
|
7670
|
+
sig { params(effective_until: Time).void }
|
|
7671
|
+
attr_writer :effective_until
|
|
7672
|
+
|
|
7673
|
+
sig do
|
|
7674
|
+
params(
|
|
7675
|
+
effective_at: Time,
|
|
7676
|
+
revenue_system_configuration:
|
|
7677
|
+
T.nilable(
|
|
7678
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::OrHash
|
|
7679
|
+
),
|
|
7680
|
+
effective_until: Time
|
|
7681
|
+
).returns(T.attached_class)
|
|
7682
|
+
end
|
|
7683
|
+
def self.new(
|
|
7684
|
+
# The date this revenue system configuration became or becomes active.
|
|
7685
|
+
effective_at:,
|
|
7686
|
+
revenue_system_configuration:,
|
|
7687
|
+
# The date this revenue system configuration is superseded by the next entry. Null
|
|
7688
|
+
# for the last entry in the schedule.
|
|
7689
|
+
effective_until: nil
|
|
7690
|
+
)
|
|
7691
|
+
end
|
|
7692
|
+
|
|
7693
|
+
sig do
|
|
7694
|
+
override.returns(
|
|
7695
|
+
{
|
|
7696
|
+
effective_at: Time,
|
|
7697
|
+
revenue_system_configuration:
|
|
7698
|
+
T.nilable(
|
|
7699
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration
|
|
7700
|
+
),
|
|
7701
|
+
effective_until: Time
|
|
7702
|
+
}
|
|
7703
|
+
)
|
|
7704
|
+
end
|
|
7705
|
+
def to_hash
|
|
7706
|
+
end
|
|
7707
|
+
|
|
7708
|
+
class RevenueSystemConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
7709
|
+
OrHash =
|
|
7710
|
+
T.type_alias do
|
|
7711
|
+
T.any(
|
|
7712
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration,
|
|
7713
|
+
MetronomeSDK::Internal::AnyHash
|
|
7714
|
+
)
|
|
7715
|
+
end
|
|
7716
|
+
|
|
7717
|
+
# ID of the revenue system configuration.
|
|
7718
|
+
sig { returns(String) }
|
|
7719
|
+
attr_accessor :id
|
|
7720
|
+
|
|
7721
|
+
# Configuration for the revenue system. The structure of this object is specific
|
|
7722
|
+
# to the provider.
|
|
7723
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
7724
|
+
attr_accessor :configuration
|
|
7725
|
+
|
|
7726
|
+
sig { returns(String) }
|
|
7727
|
+
attr_accessor :customer_id
|
|
7728
|
+
|
|
7729
|
+
# ID of the delivery method used for this customer configuration.
|
|
7730
|
+
sig { returns(String) }
|
|
7731
|
+
attr_accessor :delivery_method_id
|
|
7732
|
+
|
|
7733
|
+
# The revenue system provider (e.g. netsuite).
|
|
7734
|
+
sig do
|
|
7735
|
+
returns(
|
|
7736
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol
|
|
7737
|
+
)
|
|
7738
|
+
end
|
|
7739
|
+
attr_accessor :provider
|
|
7740
|
+
|
|
7741
|
+
sig { returns(T.nilable(Time)) }
|
|
7742
|
+
attr_accessor :archived_at
|
|
7743
|
+
|
|
7744
|
+
# The method to use for delivering data to the revenue system.
|
|
7745
|
+
sig do
|
|
7746
|
+
returns(
|
|
7747
|
+
T.nilable(
|
|
7748
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7749
|
+
)
|
|
7750
|
+
)
|
|
7751
|
+
end
|
|
7752
|
+
attr_reader :delivery_method
|
|
7753
|
+
|
|
7754
|
+
sig do
|
|
7755
|
+
params(
|
|
7756
|
+
delivery_method:
|
|
7757
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::OrSymbol
|
|
7758
|
+
).void
|
|
7759
|
+
end
|
|
7760
|
+
attr_writer :delivery_method
|
|
7761
|
+
|
|
7762
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
7763
|
+
# to the delivery method.
|
|
7764
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
7765
|
+
attr_reader :delivery_method_configuration
|
|
7766
|
+
|
|
7767
|
+
sig do
|
|
7768
|
+
params(
|
|
7769
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything]
|
|
7770
|
+
).void
|
|
7771
|
+
end
|
|
7772
|
+
attr_writer :delivery_method_configuration
|
|
7773
|
+
|
|
7774
|
+
sig do
|
|
7775
|
+
params(
|
|
7776
|
+
id: String,
|
|
7777
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
7778
|
+
customer_id: String,
|
|
7779
|
+
delivery_method_id: String,
|
|
7780
|
+
provider:
|
|
7781
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::OrSymbol,
|
|
7782
|
+
archived_at: T.nilable(Time),
|
|
7783
|
+
delivery_method:
|
|
7784
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::OrSymbol,
|
|
7785
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything]
|
|
7786
|
+
).returns(T.attached_class)
|
|
7787
|
+
end
|
|
7788
|
+
def self.new(
|
|
7789
|
+
# ID of the revenue system configuration.
|
|
7790
|
+
id:,
|
|
7791
|
+
# Configuration for the revenue system. The structure of this object is specific
|
|
7792
|
+
# to the provider.
|
|
7793
|
+
configuration:,
|
|
7794
|
+
customer_id:,
|
|
7795
|
+
# ID of the delivery method used for this customer configuration.
|
|
7796
|
+
delivery_method_id:,
|
|
7797
|
+
# The revenue system provider (e.g. netsuite).
|
|
7798
|
+
provider:,
|
|
7799
|
+
archived_at: nil,
|
|
7800
|
+
# The method to use for delivering data to the revenue system.
|
|
7801
|
+
delivery_method: nil,
|
|
7802
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
7803
|
+
# to the delivery method.
|
|
7804
|
+
delivery_method_configuration: nil
|
|
7805
|
+
)
|
|
7806
|
+
end
|
|
7807
|
+
|
|
7808
|
+
sig do
|
|
7809
|
+
override.returns(
|
|
7810
|
+
{
|
|
7811
|
+
id: String,
|
|
7812
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
7813
|
+
customer_id: String,
|
|
7814
|
+
delivery_method_id: String,
|
|
7815
|
+
provider:
|
|
7816
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol,
|
|
7817
|
+
archived_at: T.nilable(Time),
|
|
7818
|
+
delivery_method:
|
|
7819
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol,
|
|
7820
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything]
|
|
7821
|
+
}
|
|
7822
|
+
)
|
|
7823
|
+
end
|
|
7824
|
+
def to_hash
|
|
7825
|
+
end
|
|
7826
|
+
|
|
7827
|
+
# The revenue system provider (e.g. netsuite).
|
|
7828
|
+
module Provider
|
|
7829
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
7830
|
+
|
|
7831
|
+
TaggedSymbol =
|
|
7832
|
+
T.type_alias do
|
|
7833
|
+
T.all(
|
|
7834
|
+
Symbol,
|
|
7835
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider
|
|
7836
|
+
)
|
|
7837
|
+
end
|
|
7838
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
7839
|
+
|
|
7840
|
+
NETSUITE =
|
|
7841
|
+
T.let(
|
|
7842
|
+
:netsuite,
|
|
7843
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol
|
|
7844
|
+
)
|
|
7845
|
+
|
|
7846
|
+
sig do
|
|
7847
|
+
override.returns(
|
|
7848
|
+
T::Array[
|
|
7849
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol
|
|
7850
|
+
]
|
|
7851
|
+
)
|
|
7852
|
+
end
|
|
7853
|
+
def self.values
|
|
7854
|
+
end
|
|
7855
|
+
end
|
|
7856
|
+
|
|
7857
|
+
# The method to use for delivering data to the revenue system.
|
|
7858
|
+
module DeliveryMethod
|
|
7859
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
7860
|
+
|
|
7861
|
+
TaggedSymbol =
|
|
7862
|
+
T.type_alias do
|
|
7863
|
+
T.all(
|
|
7864
|
+
Symbol,
|
|
7865
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod
|
|
7866
|
+
)
|
|
7867
|
+
end
|
|
7868
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
7869
|
+
|
|
7870
|
+
DIRECT_TO_BILLING_PROVIDER =
|
|
7871
|
+
T.let(
|
|
7872
|
+
:direct_to_billing_provider,
|
|
7873
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7874
|
+
)
|
|
7875
|
+
AWS_SQS =
|
|
7876
|
+
T.let(
|
|
7877
|
+
:aws_sqs,
|
|
7878
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7879
|
+
)
|
|
7880
|
+
TACKLE =
|
|
7881
|
+
T.let(
|
|
7882
|
+
:tackle,
|
|
7883
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7884
|
+
)
|
|
7885
|
+
AWS_SNS =
|
|
7886
|
+
T.let(
|
|
7887
|
+
:aws_sns,
|
|
7888
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7889
|
+
)
|
|
7890
|
+
|
|
7891
|
+
sig do
|
|
7892
|
+
override.returns(
|
|
7893
|
+
T::Array[
|
|
7894
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7895
|
+
]
|
|
7896
|
+
)
|
|
7897
|
+
end
|
|
7898
|
+
def self.values
|
|
7899
|
+
end
|
|
7900
|
+
end
|
|
7901
|
+
end
|
|
7902
|
+
end
|
|
7903
|
+
|
|
7212
7904
|
# Determines which scheduled and commit charges to consolidate onto the Contract's
|
|
7213
7905
|
# usage invoice. The charge's `timestamp` must match the usage invoice's
|
|
7214
7906
|
# `ending_before` date for consolidation to occur. This field cannot be modified
|