Class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1RatePlan

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/apigee_v1/classes.rb,
lib/google/apis/apigee_v1/representations.rb,
lib/google/apis/apigee_v1/representations.rb

Overview

Rate plan details.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudApigeeV1RatePlan

Returns a new instance of GoogleCloudApigeeV1RatePlan.



9517
9518
9519
# File 'lib/google/apis/apigee_v1/classes.rb', line 9517

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#apiproductString

Name of the API product that the rate plan is associated with. Corresponds to the JSON property apiproduct

Returns:

  • (String)


9411
9412
9413
# File 'lib/google/apis/apigee_v1/classes.rb', line 9411

def apiproduct
  @apiproduct
end

#billing_periodString

Frequency at which the customer will be billed. Corresponds to the JSON property billingPeriod

Returns:

  • (String)


9416
9417
9418
# File 'lib/google/apis/apigee_v1/classes.rb', line 9416

def billing_period
  @billing_period
end

#consumption_pricing_ratesArray<Google::Apis::ApigeeV1::GoogleCloudApigeeV1RateRange>

API call volume ranges and the fees charged when the total number of API calls is within a given range. The method used to calculate the final fee depends on the selected pricing model. For example, if the pricing model is BANDED and the ranges are defined as follows: ` "start": 1, "end": 100, "fee": 2 `, ` "start": 101, "end": 200, "fee": 1.50 `, ` "start": 201, "end": 0, "fee": 1 `, ` Then the following fees would be charged based on the total number of API calls (assuming the currency selected is USD): * 50 calls cost 50 x $2 = $100 * 150 calls cost 100 x $2 + 50 x $1.5 = $275 * 250 calls cost 100 x $2 + 100 x $1.5 + 50 x $1 = $400 * 500 calls cost 100 x $2 + 100 x $1.5 + 300 x $1 = $650 Corresponds to the JSON property consumptionPricingRates



9430
9431
9432
# File 'lib/google/apis/apigee_v1/classes.rb', line 9430

def consumption_pricing_rates
  @consumption_pricing_rates
end

#consumption_pricing_typeString

Pricing model used for consumption-based charges. Corresponds to the JSON property consumptionPricingType

Returns:

  • (String)


9435
9436
9437
# File 'lib/google/apis/apigee_v1/classes.rb', line 9435

def consumption_pricing_type
  @consumption_pricing_type
end

#created_atFixnum

Output only. Time that the rate plan was created in milliseconds since epoch. Corresponds to the JSON property createdAt

Returns:

  • (Fixnum)


9440
9441
9442
# File 'lib/google/apis/apigee_v1/classes.rb', line 9440

def created_at
  @created_at
end

#currency_codeString

Currency to be used for billing. Consists of a three-letter code as defined by the ISO 4217 standard. Corresponds to the JSON property currencyCode

Returns:

  • (String)


9446
9447
9448
# File 'lib/google/apis/apigee_v1/classes.rb', line 9446

def currency_code
  @currency_code
end

#descriptionString

Description of the rate plan. Corresponds to the JSON property description

Returns:

  • (String)


9451
9452
9453
# File 'lib/google/apis/apigee_v1/classes.rb', line 9451

def description
  @description
end

#display_nameString

Display name of the rate plan. Corresponds to the JSON property displayName

Returns:

  • (String)


9456
9457
9458
# File 'lib/google/apis/apigee_v1/classes.rb', line 9456

def display_name
  @display_name
end

#end_timeFixnum

Time when the rate plan will expire in milliseconds since epoch. Set to 0 or null to indicate that the rate plan should never expire. Corresponds to the JSON property endTime

Returns:

  • (Fixnum)


9462
9463
9464
# File 'lib/google/apis/apigee_v1/classes.rb', line 9462

def end_time
  @end_time
end

#fixed_fee_frequencyFixnum

Frequency at which the fixed fee is charged. Corresponds to the JSON property fixedFeeFrequency

Returns:

  • (Fixnum)


9467
9468
9469
# File 'lib/google/apis/apigee_v1/classes.rb', line 9467

def fixed_fee_frequency
  @fixed_fee_frequency
end

#fixed_recurring_feeGoogle::Apis::ApigeeV1::GoogleTypeMoney

Represents an amount of money with its currency type. Corresponds to the JSON property fixedRecurringFee



9472
9473
9474
# File 'lib/google/apis/apigee_v1/classes.rb', line 9472

def fixed_recurring_fee
  @fixed_recurring_fee
end

#last_modified_atFixnum

Output only. Time the rate plan was last modified in milliseconds since epoch. Corresponds to the JSON property lastModifiedAt

Returns:

  • (Fixnum)


9477
9478
9479
# File 'lib/google/apis/apigee_v1/classes.rb', line 9477

def last_modified_at
  @last_modified_at
end

#nameString

Output only. Name of the rate plan. Corresponds to the JSON property name

Returns:

  • (String)


9482
9483
9484
# File 'lib/google/apis/apigee_v1/classes.rb', line 9482

def name
  @name
end

#payment_funding_modelString

DEPRECATED: This field is no longer supported and will eventually be removed when Apigee Hybrid 1.5/1.6 is no longer supported. Instead, use the billingType field inside DeveloperMonetizationConfig resource. Flag that specifies the billing account type, prepaid or postpaid. Corresponds to the JSON property paymentFundingModel

Returns:

  • (String)


9490
9491
9492
# File 'lib/google/apis/apigee_v1/classes.rb', line 9490

def payment_funding_model
  @payment_funding_model
end

#revenue_share_ratesArray<Google::Apis::ApigeeV1::GoogleCloudApigeeV1RevenueShareRange>

Details of the revenue sharing model. Corresponds to the JSON property revenueShareRates



9495
9496
9497
# File 'lib/google/apis/apigee_v1/classes.rb', line 9495

def revenue_share_rates
  @revenue_share_rates
end

#revenue_share_typeString

Method used to calculate the revenue that is shared with developers. Corresponds to the JSON property revenueShareType

Returns:

  • (String)


9500
9501
9502
# File 'lib/google/apis/apigee_v1/classes.rb', line 9500

def revenue_share_type
  @revenue_share_type
end

#setup_feeGoogle::Apis::ApigeeV1::GoogleTypeMoney

Represents an amount of money with its currency type. Corresponds to the JSON property setupFee



9505
9506
9507
# File 'lib/google/apis/apigee_v1/classes.rb', line 9505

def setup_fee
  @setup_fee
end

#start_timeFixnum

Time when the rate plan becomes active in milliseconds since epoch. Corresponds to the JSON property startTime

Returns:

  • (Fixnum)


9510
9511
9512
# File 'lib/google/apis/apigee_v1/classes.rb', line 9510

def start_time
  @start_time
end

#stateString

Current state of the rate plan (draft or published). Corresponds to the JSON property state

Returns:

  • (String)


9515
9516
9517
# File 'lib/google/apis/apigee_v1/classes.rb', line 9515

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
# File 'lib/google/apis/apigee_v1/classes.rb', line 9522

def update!(**args)
  @apiproduct = args[:apiproduct] if args.key?(:apiproduct)
  @billing_period = args[:billing_period] if args.key?(:billing_period)
  @consumption_pricing_rates = args[:consumption_pricing_rates] if args.key?(:consumption_pricing_rates)
  @consumption_pricing_type = args[:consumption_pricing_type] if args.key?(:consumption_pricing_type)
  @created_at = args[:created_at] if args.key?(:created_at)
  @currency_code = args[:currency_code] if args.key?(:currency_code)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @end_time = args[:end_time] if args.key?(:end_time)
  @fixed_fee_frequency = args[:fixed_fee_frequency] if args.key?(:fixed_fee_frequency)
  @fixed_recurring_fee = args[:fixed_recurring_fee] if args.key?(:fixed_recurring_fee)
  @last_modified_at = args[:last_modified_at] if args.key?(:last_modified_at)
  @name = args[:name] if args.key?(:name)
  @payment_funding_model = args[:payment_funding_model] if args.key?(:payment_funding_model)
  @revenue_share_rates = args[:revenue_share_rates] if args.key?(:revenue_share_rates)
  @revenue_share_type = args[:revenue_share_type] if args.key?(:revenue_share_type)
  @setup_fee = args[:setup_fee] if args.key?(:setup_fee)
  @start_time = args[:start_time] if args.key?(:start_time)
  @state = args[:state] if args.key?(:state)
end