metronome-sdk 3.8.0 → 3.9.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 +8 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/models/contract.rb +46 -16
- data/lib/metronome_sdk/models/contract_v2.rb +355 -9
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +65 -13
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +2 -0
- data/lib/metronome_sdk/version.rb +1 -1
- data/rbi/metronome_sdk/models/contract.rbi +47 -22
- data/rbi/metronome_sdk/models/contract_v2.rbi +672 -8
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +60 -32
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +10 -0
- data/sig/metronome_sdk/models/contract.rbs +22 -11
- data/sig/metronome_sdk/models/contract_v2.rbs +281 -3
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +30 -15
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +4 -2
- 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,
|
|
@@ -3258,6 +3324,294 @@ module MetronomeSDK
|
|
|
3258
3324
|
end
|
|
3259
3325
|
end
|
|
3260
3326
|
|
|
3327
|
+
class BillingProviderConfigurationSchedule < MetronomeSDK::Internal::Type::BaseModel
|
|
3328
|
+
OrHash =
|
|
3329
|
+
T.type_alias do
|
|
3330
|
+
T.any(
|
|
3331
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule,
|
|
3332
|
+
MetronomeSDK::Internal::AnyHash
|
|
3333
|
+
)
|
|
3334
|
+
end
|
|
3335
|
+
|
|
3336
|
+
sig do
|
|
3337
|
+
returns(
|
|
3338
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration
|
|
3339
|
+
)
|
|
3340
|
+
end
|
|
3341
|
+
attr_reader :billing_provider_configuration
|
|
3342
|
+
|
|
3343
|
+
sig do
|
|
3344
|
+
params(
|
|
3345
|
+
billing_provider_configuration:
|
|
3346
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::OrHash
|
|
3347
|
+
).void
|
|
3348
|
+
end
|
|
3349
|
+
attr_writer :billing_provider_configuration
|
|
3350
|
+
|
|
3351
|
+
# The date this billing provider configuration became or becomes active.
|
|
3352
|
+
sig { returns(Time) }
|
|
3353
|
+
attr_accessor :effective_at
|
|
3354
|
+
|
|
3355
|
+
# The date this billing provider configuration is superseded by the next entry.
|
|
3356
|
+
# Null for the last entry in the schedule.
|
|
3357
|
+
sig { returns(T.nilable(Time)) }
|
|
3358
|
+
attr_reader :effective_until
|
|
3359
|
+
|
|
3360
|
+
sig { params(effective_until: Time).void }
|
|
3361
|
+
attr_writer :effective_until
|
|
3362
|
+
|
|
3363
|
+
sig do
|
|
3364
|
+
params(
|
|
3365
|
+
billing_provider_configuration:
|
|
3366
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::OrHash,
|
|
3367
|
+
effective_at: Time,
|
|
3368
|
+
effective_until: Time
|
|
3369
|
+
).returns(T.attached_class)
|
|
3370
|
+
end
|
|
3371
|
+
def self.new(
|
|
3372
|
+
billing_provider_configuration:,
|
|
3373
|
+
# The date this billing provider configuration became or becomes active.
|
|
3374
|
+
effective_at:,
|
|
3375
|
+
# The date this billing provider configuration is superseded by the next entry.
|
|
3376
|
+
# Null for the last entry in the schedule.
|
|
3377
|
+
effective_until: nil
|
|
3378
|
+
)
|
|
3379
|
+
end
|
|
3380
|
+
|
|
3381
|
+
sig do
|
|
3382
|
+
override.returns(
|
|
3383
|
+
{
|
|
3384
|
+
billing_provider_configuration:
|
|
3385
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration,
|
|
3386
|
+
effective_at: Time,
|
|
3387
|
+
effective_until: Time
|
|
3388
|
+
}
|
|
3389
|
+
)
|
|
3390
|
+
end
|
|
3391
|
+
def to_hash
|
|
3392
|
+
end
|
|
3393
|
+
|
|
3394
|
+
class BillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
3395
|
+
OrHash =
|
|
3396
|
+
T.type_alias do
|
|
3397
|
+
T.any(
|
|
3398
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration,
|
|
3399
|
+
MetronomeSDK::Internal::AnyHash
|
|
3400
|
+
)
|
|
3401
|
+
end
|
|
3402
|
+
|
|
3403
|
+
# ID of this configuration; can be provided as the
|
|
3404
|
+
# billing_provider_configuration_id when creating a contract.
|
|
3405
|
+
sig { returns(String) }
|
|
3406
|
+
attr_accessor :id
|
|
3407
|
+
|
|
3408
|
+
sig { returns(T.nilable(Time)) }
|
|
3409
|
+
attr_accessor :archived_at
|
|
3410
|
+
|
|
3411
|
+
# The billing provider set for this configuration.
|
|
3412
|
+
sig do
|
|
3413
|
+
returns(
|
|
3414
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3415
|
+
)
|
|
3416
|
+
end
|
|
3417
|
+
attr_accessor :billing_provider
|
|
3418
|
+
|
|
3419
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
3420
|
+
# to the billing provider.
|
|
3421
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
3422
|
+
attr_accessor :configuration
|
|
3423
|
+
|
|
3424
|
+
sig { returns(String) }
|
|
3425
|
+
attr_accessor :customer_id
|
|
3426
|
+
|
|
3427
|
+
# The method to use for delivering invoices to this customer.
|
|
3428
|
+
sig do
|
|
3429
|
+
returns(
|
|
3430
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3431
|
+
)
|
|
3432
|
+
end
|
|
3433
|
+
attr_accessor :delivery_method
|
|
3434
|
+
|
|
3435
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
3436
|
+
# to the delivery method.
|
|
3437
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
3438
|
+
attr_accessor :delivery_method_configuration
|
|
3439
|
+
|
|
3440
|
+
# ID of the delivery method to use for this customer.
|
|
3441
|
+
sig { returns(String) }
|
|
3442
|
+
attr_accessor :delivery_method_id
|
|
3443
|
+
|
|
3444
|
+
sig do
|
|
3445
|
+
params(
|
|
3446
|
+
id: String,
|
|
3447
|
+
archived_at: T.nilable(Time),
|
|
3448
|
+
billing_provider:
|
|
3449
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::OrSymbol,
|
|
3450
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
3451
|
+
customer_id: String,
|
|
3452
|
+
delivery_method:
|
|
3453
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::OrSymbol,
|
|
3454
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
3455
|
+
delivery_method_id: String
|
|
3456
|
+
).returns(T.attached_class)
|
|
3457
|
+
end
|
|
3458
|
+
def self.new(
|
|
3459
|
+
# ID of this configuration; can be provided as the
|
|
3460
|
+
# billing_provider_configuration_id when creating a contract.
|
|
3461
|
+
id:,
|
|
3462
|
+
archived_at:,
|
|
3463
|
+
# The billing provider set for this configuration.
|
|
3464
|
+
billing_provider:,
|
|
3465
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
3466
|
+
# to the billing provider.
|
|
3467
|
+
configuration:,
|
|
3468
|
+
customer_id:,
|
|
3469
|
+
# The method to use for delivering invoices to this customer.
|
|
3470
|
+
delivery_method:,
|
|
3471
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
3472
|
+
# to the delivery method.
|
|
3473
|
+
delivery_method_configuration:,
|
|
3474
|
+
# ID of the delivery method to use for this customer.
|
|
3475
|
+
delivery_method_id:
|
|
3476
|
+
)
|
|
3477
|
+
end
|
|
3478
|
+
|
|
3479
|
+
sig do
|
|
3480
|
+
override.returns(
|
|
3481
|
+
{
|
|
3482
|
+
id: String,
|
|
3483
|
+
archived_at: T.nilable(Time),
|
|
3484
|
+
billing_provider:
|
|
3485
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol,
|
|
3486
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
3487
|
+
customer_id: String,
|
|
3488
|
+
delivery_method:
|
|
3489
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol,
|
|
3490
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
3491
|
+
delivery_method_id: String
|
|
3492
|
+
}
|
|
3493
|
+
)
|
|
3494
|
+
end
|
|
3495
|
+
def to_hash
|
|
3496
|
+
end
|
|
3497
|
+
|
|
3498
|
+
# The billing provider set for this configuration.
|
|
3499
|
+
module BillingProvider
|
|
3500
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
3501
|
+
|
|
3502
|
+
TaggedSymbol =
|
|
3503
|
+
T.type_alias do
|
|
3504
|
+
T.all(
|
|
3505
|
+
Symbol,
|
|
3506
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider
|
|
3507
|
+
)
|
|
3508
|
+
end
|
|
3509
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
3510
|
+
|
|
3511
|
+
AWS_MARKETPLACE =
|
|
3512
|
+
T.let(
|
|
3513
|
+
:aws_marketplace,
|
|
3514
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3515
|
+
)
|
|
3516
|
+
STRIPE =
|
|
3517
|
+
T.let(
|
|
3518
|
+
:stripe,
|
|
3519
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3520
|
+
)
|
|
3521
|
+
NETSUITE =
|
|
3522
|
+
T.let(
|
|
3523
|
+
:netsuite,
|
|
3524
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3525
|
+
)
|
|
3526
|
+
CUSTOM =
|
|
3527
|
+
T.let(
|
|
3528
|
+
:custom,
|
|
3529
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3530
|
+
)
|
|
3531
|
+
AZURE_MARKETPLACE =
|
|
3532
|
+
T.let(
|
|
3533
|
+
:azure_marketplace,
|
|
3534
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3535
|
+
)
|
|
3536
|
+
QUICKBOOKS_ONLINE =
|
|
3537
|
+
T.let(
|
|
3538
|
+
:quickbooks_online,
|
|
3539
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3540
|
+
)
|
|
3541
|
+
WORKDAY =
|
|
3542
|
+
T.let(
|
|
3543
|
+
:workday,
|
|
3544
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3545
|
+
)
|
|
3546
|
+
GCP_MARKETPLACE =
|
|
3547
|
+
T.let(
|
|
3548
|
+
:gcp_marketplace,
|
|
3549
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3550
|
+
)
|
|
3551
|
+
METRONOME =
|
|
3552
|
+
T.let(
|
|
3553
|
+
:metronome,
|
|
3554
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3555
|
+
)
|
|
3556
|
+
|
|
3557
|
+
sig do
|
|
3558
|
+
override.returns(
|
|
3559
|
+
T::Array[
|
|
3560
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
3561
|
+
]
|
|
3562
|
+
)
|
|
3563
|
+
end
|
|
3564
|
+
def self.values
|
|
3565
|
+
end
|
|
3566
|
+
end
|
|
3567
|
+
|
|
3568
|
+
# The method to use for delivering invoices to this customer.
|
|
3569
|
+
module DeliveryMethod
|
|
3570
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
3571
|
+
|
|
3572
|
+
TaggedSymbol =
|
|
3573
|
+
T.type_alias do
|
|
3574
|
+
T.all(
|
|
3575
|
+
Symbol,
|
|
3576
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod
|
|
3577
|
+
)
|
|
3578
|
+
end
|
|
3579
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
3580
|
+
|
|
3581
|
+
DIRECT_TO_BILLING_PROVIDER =
|
|
3582
|
+
T.let(
|
|
3583
|
+
:direct_to_billing_provider,
|
|
3584
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3585
|
+
)
|
|
3586
|
+
AWS_SQS =
|
|
3587
|
+
T.let(
|
|
3588
|
+
:aws_sqs,
|
|
3589
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3590
|
+
)
|
|
3591
|
+
TACKLE =
|
|
3592
|
+
T.let(
|
|
3593
|
+
:tackle,
|
|
3594
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3595
|
+
)
|
|
3596
|
+
AWS_SNS =
|
|
3597
|
+
T.let(
|
|
3598
|
+
:aws_sns,
|
|
3599
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3600
|
+
)
|
|
3601
|
+
|
|
3602
|
+
sig do
|
|
3603
|
+
override.returns(
|
|
3604
|
+
T::Array[
|
|
3605
|
+
MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
3606
|
+
]
|
|
3607
|
+
)
|
|
3608
|
+
end
|
|
3609
|
+
def self.values
|
|
3610
|
+
end
|
|
3611
|
+
end
|
|
3612
|
+
end
|
|
3613
|
+
end
|
|
3614
|
+
|
|
3261
3615
|
class Credit < MetronomeSDK::Internal::Type::BaseModel
|
|
3262
3616
|
OrHash =
|
|
3263
3617
|
T.type_alias do
|
|
@@ -4473,10 +4827,15 @@ module MetronomeSDK
|
|
|
4473
4827
|
)
|
|
4474
4828
|
end
|
|
4475
4829
|
|
|
4476
|
-
# ID of
|
|
4830
|
+
# ID of this configuration; can be provided as the
|
|
4831
|
+
# billing_provider_configuration_id when creating a contract.
|
|
4477
4832
|
sig { returns(String) }
|
|
4478
4833
|
attr_accessor :id
|
|
4479
4834
|
|
|
4835
|
+
sig { returns(T.nilable(Time)) }
|
|
4836
|
+
attr_accessor :archived_at
|
|
4837
|
+
|
|
4838
|
+
# The billing provider set for this configuration.
|
|
4480
4839
|
sig do
|
|
4481
4840
|
returns(
|
|
4482
4841
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
@@ -4484,6 +4843,15 @@ module MetronomeSDK
|
|
|
4484
4843
|
end
|
|
4485
4844
|
attr_accessor :billing_provider
|
|
4486
4845
|
|
|
4846
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
4847
|
+
# to the billing provider.
|
|
4848
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
4849
|
+
attr_accessor :configuration
|
|
4850
|
+
|
|
4851
|
+
sig { returns(String) }
|
|
4852
|
+
attr_accessor :customer_id
|
|
4853
|
+
|
|
4854
|
+
# The method to use for delivering invoices to this customer.
|
|
4487
4855
|
sig do
|
|
4488
4856
|
returns(
|
|
4489
4857
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
@@ -4491,21 +4859,47 @@ module MetronomeSDK
|
|
|
4491
4859
|
end
|
|
4492
4860
|
attr_accessor :delivery_method
|
|
4493
4861
|
|
|
4494
|
-
#
|
|
4862
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
4863
|
+
# to the delivery method.
|
|
4864
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
4865
|
+
attr_accessor :delivery_method_configuration
|
|
4866
|
+
|
|
4867
|
+
# ID of the delivery method to use for this customer.
|
|
4868
|
+
sig { returns(String) }
|
|
4869
|
+
attr_accessor :delivery_method_id
|
|
4870
|
+
|
|
4495
4871
|
sig do
|
|
4496
4872
|
params(
|
|
4497
4873
|
id: String,
|
|
4874
|
+
archived_at: T.nilable(Time),
|
|
4498
4875
|
billing_provider:
|
|
4499
4876
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::BillingProvider::OrSymbol,
|
|
4877
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
4878
|
+
customer_id: String,
|
|
4500
4879
|
delivery_method:
|
|
4501
|
-
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::OrSymbol
|
|
4880
|
+
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::OrSymbol,
|
|
4881
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
4882
|
+
delivery_method_id: String
|
|
4502
4883
|
).returns(T.attached_class)
|
|
4503
4884
|
end
|
|
4504
4885
|
def self.new(
|
|
4505
|
-
# ID of
|
|
4886
|
+
# ID of this configuration; can be provided as the
|
|
4887
|
+
# billing_provider_configuration_id when creating a contract.
|
|
4506
4888
|
id:,
|
|
4889
|
+
archived_at:,
|
|
4890
|
+
# The billing provider set for this configuration.
|
|
4507
4891
|
billing_provider:,
|
|
4508
|
-
|
|
4892
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
4893
|
+
# to the billing provider.
|
|
4894
|
+
configuration:,
|
|
4895
|
+
customer_id:,
|
|
4896
|
+
# The method to use for delivering invoices to this customer.
|
|
4897
|
+
delivery_method:,
|
|
4898
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
4899
|
+
# to the delivery method.
|
|
4900
|
+
delivery_method_configuration:,
|
|
4901
|
+
# ID of the delivery method to use for this customer.
|
|
4902
|
+
delivery_method_id:
|
|
4509
4903
|
)
|
|
4510
4904
|
end
|
|
4511
4905
|
|
|
@@ -4513,16 +4907,22 @@ module MetronomeSDK
|
|
|
4513
4907
|
override.returns(
|
|
4514
4908
|
{
|
|
4515
4909
|
id: String,
|
|
4910
|
+
archived_at: T.nilable(Time),
|
|
4516
4911
|
billing_provider:
|
|
4517
4912
|
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol,
|
|
4913
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
4914
|
+
customer_id: String,
|
|
4518
4915
|
delivery_method:
|
|
4519
|
-
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
4916
|
+
MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol,
|
|
4917
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
4918
|
+
delivery_method_id: String
|
|
4520
4919
|
}
|
|
4521
4920
|
)
|
|
4522
4921
|
end
|
|
4523
4922
|
def to_hash
|
|
4524
4923
|
end
|
|
4525
4924
|
|
|
4925
|
+
# The billing provider set for this configuration.
|
|
4526
4926
|
module BillingProvider
|
|
4527
4927
|
extend MetronomeSDK::Internal::Type::Enum
|
|
4528
4928
|
|
|
@@ -4592,6 +4992,7 @@ module MetronomeSDK
|
|
|
4592
4992
|
end
|
|
4593
4993
|
end
|
|
4594
4994
|
|
|
4995
|
+
# The method to use for delivering invoices to this customer.
|
|
4595
4996
|
module DeliveryMethod
|
|
4596
4997
|
extend MetronomeSDK::Internal::Type::Enum
|
|
4597
4998
|
|
|
@@ -7209,6 +7610,269 @@ module MetronomeSDK
|
|
|
7209
7610
|
end
|
|
7210
7611
|
end
|
|
7211
7612
|
|
|
7613
|
+
class RevenueSystemConfigurationSchedule < MetronomeSDK::Internal::Type::BaseModel
|
|
7614
|
+
OrHash =
|
|
7615
|
+
T.type_alias do
|
|
7616
|
+
T.any(
|
|
7617
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule,
|
|
7618
|
+
MetronomeSDK::Internal::AnyHash
|
|
7619
|
+
)
|
|
7620
|
+
end
|
|
7621
|
+
|
|
7622
|
+
# The date this revenue system configuration became or becomes active.
|
|
7623
|
+
sig { returns(Time) }
|
|
7624
|
+
attr_accessor :effective_at
|
|
7625
|
+
|
|
7626
|
+
sig do
|
|
7627
|
+
returns(
|
|
7628
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration
|
|
7629
|
+
)
|
|
7630
|
+
end
|
|
7631
|
+
attr_reader :revenue_system_configuration
|
|
7632
|
+
|
|
7633
|
+
sig do
|
|
7634
|
+
params(
|
|
7635
|
+
revenue_system_configuration:
|
|
7636
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::OrHash
|
|
7637
|
+
).void
|
|
7638
|
+
end
|
|
7639
|
+
attr_writer :revenue_system_configuration
|
|
7640
|
+
|
|
7641
|
+
# The date this revenue system configuration is superseded by the next entry. Null
|
|
7642
|
+
# for the last entry in the schedule.
|
|
7643
|
+
sig { returns(T.nilable(Time)) }
|
|
7644
|
+
attr_reader :effective_until
|
|
7645
|
+
|
|
7646
|
+
sig { params(effective_until: Time).void }
|
|
7647
|
+
attr_writer :effective_until
|
|
7648
|
+
|
|
7649
|
+
sig do
|
|
7650
|
+
params(
|
|
7651
|
+
effective_at: Time,
|
|
7652
|
+
revenue_system_configuration:
|
|
7653
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::OrHash,
|
|
7654
|
+
effective_until: Time
|
|
7655
|
+
).returns(T.attached_class)
|
|
7656
|
+
end
|
|
7657
|
+
def self.new(
|
|
7658
|
+
# The date this revenue system configuration became or becomes active.
|
|
7659
|
+
effective_at:,
|
|
7660
|
+
revenue_system_configuration:,
|
|
7661
|
+
# The date this revenue system configuration is superseded by the next entry. Null
|
|
7662
|
+
# for the last entry in the schedule.
|
|
7663
|
+
effective_until: nil
|
|
7664
|
+
)
|
|
7665
|
+
end
|
|
7666
|
+
|
|
7667
|
+
sig do
|
|
7668
|
+
override.returns(
|
|
7669
|
+
{
|
|
7670
|
+
effective_at: Time,
|
|
7671
|
+
revenue_system_configuration:
|
|
7672
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration,
|
|
7673
|
+
effective_until: Time
|
|
7674
|
+
}
|
|
7675
|
+
)
|
|
7676
|
+
end
|
|
7677
|
+
def to_hash
|
|
7678
|
+
end
|
|
7679
|
+
|
|
7680
|
+
class RevenueSystemConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
7681
|
+
OrHash =
|
|
7682
|
+
T.type_alias do
|
|
7683
|
+
T.any(
|
|
7684
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration,
|
|
7685
|
+
MetronomeSDK::Internal::AnyHash
|
|
7686
|
+
)
|
|
7687
|
+
end
|
|
7688
|
+
|
|
7689
|
+
# ID of the revenue system configuration.
|
|
7690
|
+
sig { returns(String) }
|
|
7691
|
+
attr_accessor :id
|
|
7692
|
+
|
|
7693
|
+
# Configuration for the revenue system. The structure of this object is specific
|
|
7694
|
+
# to the provider.
|
|
7695
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
7696
|
+
attr_accessor :configuration
|
|
7697
|
+
|
|
7698
|
+
sig { returns(String) }
|
|
7699
|
+
attr_accessor :customer_id
|
|
7700
|
+
|
|
7701
|
+
# ID of the delivery method used for this customer configuration.
|
|
7702
|
+
sig { returns(String) }
|
|
7703
|
+
attr_accessor :delivery_method_id
|
|
7704
|
+
|
|
7705
|
+
# The revenue system provider (e.g. netsuite).
|
|
7706
|
+
sig do
|
|
7707
|
+
returns(
|
|
7708
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol
|
|
7709
|
+
)
|
|
7710
|
+
end
|
|
7711
|
+
attr_accessor :provider
|
|
7712
|
+
|
|
7713
|
+
sig { returns(T.nilable(Time)) }
|
|
7714
|
+
attr_accessor :archived_at
|
|
7715
|
+
|
|
7716
|
+
# The method to use for delivering data to the revenue system.
|
|
7717
|
+
sig do
|
|
7718
|
+
returns(
|
|
7719
|
+
T.nilable(
|
|
7720
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7721
|
+
)
|
|
7722
|
+
)
|
|
7723
|
+
end
|
|
7724
|
+
attr_reader :delivery_method
|
|
7725
|
+
|
|
7726
|
+
sig do
|
|
7727
|
+
params(
|
|
7728
|
+
delivery_method:
|
|
7729
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::OrSymbol
|
|
7730
|
+
).void
|
|
7731
|
+
end
|
|
7732
|
+
attr_writer :delivery_method
|
|
7733
|
+
|
|
7734
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
7735
|
+
# to the delivery method.
|
|
7736
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
7737
|
+
attr_reader :delivery_method_configuration
|
|
7738
|
+
|
|
7739
|
+
sig do
|
|
7740
|
+
params(
|
|
7741
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything]
|
|
7742
|
+
).void
|
|
7743
|
+
end
|
|
7744
|
+
attr_writer :delivery_method_configuration
|
|
7745
|
+
|
|
7746
|
+
sig do
|
|
7747
|
+
params(
|
|
7748
|
+
id: String,
|
|
7749
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
7750
|
+
customer_id: String,
|
|
7751
|
+
delivery_method_id: String,
|
|
7752
|
+
provider:
|
|
7753
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::OrSymbol,
|
|
7754
|
+
archived_at: T.nilable(Time),
|
|
7755
|
+
delivery_method:
|
|
7756
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::OrSymbol,
|
|
7757
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything]
|
|
7758
|
+
).returns(T.attached_class)
|
|
7759
|
+
end
|
|
7760
|
+
def self.new(
|
|
7761
|
+
# ID of the revenue system configuration.
|
|
7762
|
+
id:,
|
|
7763
|
+
# Configuration for the revenue system. The structure of this object is specific
|
|
7764
|
+
# to the provider.
|
|
7765
|
+
configuration:,
|
|
7766
|
+
customer_id:,
|
|
7767
|
+
# ID of the delivery method used for this customer configuration.
|
|
7768
|
+
delivery_method_id:,
|
|
7769
|
+
# The revenue system provider (e.g. netsuite).
|
|
7770
|
+
provider:,
|
|
7771
|
+
archived_at: nil,
|
|
7772
|
+
# The method to use for delivering data to the revenue system.
|
|
7773
|
+
delivery_method: nil,
|
|
7774
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
7775
|
+
# to the delivery method.
|
|
7776
|
+
delivery_method_configuration: nil
|
|
7777
|
+
)
|
|
7778
|
+
end
|
|
7779
|
+
|
|
7780
|
+
sig do
|
|
7781
|
+
override.returns(
|
|
7782
|
+
{
|
|
7783
|
+
id: String,
|
|
7784
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
7785
|
+
customer_id: String,
|
|
7786
|
+
delivery_method_id: String,
|
|
7787
|
+
provider:
|
|
7788
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol,
|
|
7789
|
+
archived_at: T.nilable(Time),
|
|
7790
|
+
delivery_method:
|
|
7791
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol,
|
|
7792
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything]
|
|
7793
|
+
}
|
|
7794
|
+
)
|
|
7795
|
+
end
|
|
7796
|
+
def to_hash
|
|
7797
|
+
end
|
|
7798
|
+
|
|
7799
|
+
# The revenue system provider (e.g. netsuite).
|
|
7800
|
+
module Provider
|
|
7801
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
7802
|
+
|
|
7803
|
+
TaggedSymbol =
|
|
7804
|
+
T.type_alias do
|
|
7805
|
+
T.all(
|
|
7806
|
+
Symbol,
|
|
7807
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider
|
|
7808
|
+
)
|
|
7809
|
+
end
|
|
7810
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
7811
|
+
|
|
7812
|
+
NETSUITE =
|
|
7813
|
+
T.let(
|
|
7814
|
+
:netsuite,
|
|
7815
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol
|
|
7816
|
+
)
|
|
7817
|
+
|
|
7818
|
+
sig do
|
|
7819
|
+
override.returns(
|
|
7820
|
+
T::Array[
|
|
7821
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::Provider::TaggedSymbol
|
|
7822
|
+
]
|
|
7823
|
+
)
|
|
7824
|
+
end
|
|
7825
|
+
def self.values
|
|
7826
|
+
end
|
|
7827
|
+
end
|
|
7828
|
+
|
|
7829
|
+
# The method to use for delivering data to the revenue system.
|
|
7830
|
+
module DeliveryMethod
|
|
7831
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
7832
|
+
|
|
7833
|
+
TaggedSymbol =
|
|
7834
|
+
T.type_alias do
|
|
7835
|
+
T.all(
|
|
7836
|
+
Symbol,
|
|
7837
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod
|
|
7838
|
+
)
|
|
7839
|
+
end
|
|
7840
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
7841
|
+
|
|
7842
|
+
DIRECT_TO_BILLING_PROVIDER =
|
|
7843
|
+
T.let(
|
|
7844
|
+
:direct_to_billing_provider,
|
|
7845
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7846
|
+
)
|
|
7847
|
+
AWS_SQS =
|
|
7848
|
+
T.let(
|
|
7849
|
+
:aws_sqs,
|
|
7850
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7851
|
+
)
|
|
7852
|
+
TACKLE =
|
|
7853
|
+
T.let(
|
|
7854
|
+
:tackle,
|
|
7855
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7856
|
+
)
|
|
7857
|
+
AWS_SNS =
|
|
7858
|
+
T.let(
|
|
7859
|
+
:aws_sns,
|
|
7860
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7861
|
+
)
|
|
7862
|
+
|
|
7863
|
+
sig do
|
|
7864
|
+
override.returns(
|
|
7865
|
+
T::Array[
|
|
7866
|
+
MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::DeliveryMethod::TaggedSymbol
|
|
7867
|
+
]
|
|
7868
|
+
)
|
|
7869
|
+
end
|
|
7870
|
+
def self.values
|
|
7871
|
+
end
|
|
7872
|
+
end
|
|
7873
|
+
end
|
|
7874
|
+
end
|
|
7875
|
+
|
|
7212
7876
|
# Determines which scheduled and commit charges to consolidate onto the Contract's
|
|
7213
7877
|
# usage invoice. The charge's `timestamp` must match the usage invoice's
|
|
7214
7878
|
# `ending_before` date for consolidation to occur. This field cannot be modified
|