Class: MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v2/contract_edit_params.rb

Defined Under Namespace

Classes: BillingProviderConfiguration, Schedule

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(billing_provider_configuration: , schedule: ) ⇒ Object

Some parameter documentations has been truncated, see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate for more details.

Update the billing provider configuration on the contract. Currently only supports adding a billing provider configuration to a contract that does not already have one.

Parameters:



286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 286

class AddBillingProviderConfigurationUpdate < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute billing_provider_configuration
  #
  #   @return [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration]
  required :billing_provider_configuration,
           -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration }

  # @!attribute schedule
  #   Indicates when the billing provider will be active on the contract. Any charges
  #   accrued during the schedule will be billed to the indicated billing provider.
  #
  #   @return [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule]
  required :schedule,
           -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule }

  # @!method initialize(billing_provider_configuration:, schedule:)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate}
  #   for more details.
  #
  #   Update the billing provider configuration on the contract. Currently only
  #   supports adding a billing provider configuration to a contract that does not
  #   already have one.
  #
  #   @param billing_provider_configuration [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration]
  #
  #   @param schedule [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule] Indicates when the billing provider will be active on the contract. Any charges

  # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate#billing_provider_configuration
  class BillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
    # @!attribute billing_provider
    #
    #   @return [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::BillingProvider, nil]
    optional :billing_provider,
             enum: -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::BillingProvider }

    # @!attribute billing_provider_configuration_id
    #
    #   @return [String, nil]
    optional :billing_provider_configuration_id, String

    # @!attribute delivery_method
    #
    #   @return [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::DeliveryMethod, nil]
    optional :delivery_method,
             enum: -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::DeliveryMethod }

    # @!method initialize(billing_provider: nil, billing_provider_configuration_id: nil, delivery_method: nil)
    #   @param billing_provider [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::BillingProvider]
    #   @param billing_provider_configuration_id [String]
    #   @param delivery_method [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::DeliveryMethod]

    # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration#billing_provider
    module BillingProvider
      extend MetronomeSDK::Internal::Type::Enum

      AWS_MARKETPLACE = :aws_marketplace
      STRIPE = :stripe
      NETSUITE = :netsuite
      CUSTOM = :custom
      AZURE_MARKETPLACE = :azure_marketplace
      QUICKBOOKS_ONLINE = :quickbooks_online
      WORKDAY = :workday
      GCP_MARKETPLACE = :gcp_marketplace
      METRONOME = :metronome

      # @!method self.values
      #   @return [Array<Symbol>]
    end

    # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration#delivery_method
    module DeliveryMethod
      extend MetronomeSDK::Internal::Type::Enum

      DIRECT_TO_BILLING_PROVIDER = :direct_to_billing_provider
      AWS_SQS = :aws_sqs
      TACKLE = :tackle
      AWS_SNS = :aws_sns

      # @!method self.values
      #   @return [Array<Symbol>]
    end
  end

  # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate#schedule
  class Schedule < MetronomeSDK::Internal::Type::BaseModel
    # @!attribute effective_at
    #   When the billing provider update will take effect.
    #
    #   @return [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule::EffectiveAt]
    required :effective_at,
             enum: -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule::EffectiveAt }

    # @!method initialize(effective_at:)
    #   Indicates when the billing provider will be active on the contract. Any charges
    #   accrued during the schedule will be billed to the indicated billing provider.
    #
    #   @param effective_at [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule::EffectiveAt] When the billing provider update will take effect.

    # When the billing provider update will take effect.
    #
    # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule#effective_at
    module EffectiveAt
      extend MetronomeSDK::Internal::Type::Enum

      START_OF_CURRENT_PERIOD = :START_OF_CURRENT_PERIOD

      # @!method self.values
      #   @return [Array<Symbol>]
    end
  end
end

Instance Attribute Details

#billing_provider_configurationMetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration



290
291
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 290

required :billing_provider_configuration,
-> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration }

#scheduleMetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule

Indicates when the billing provider will be active on the contract. Any charges accrued during the schedule will be billed to the indicated billing provider.



298
299
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 298

required :schedule,
-> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 365