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.



9558
9559
9560
# File 'lib/google/apis/apigee_v1/classes.rb', line 9558

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)


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

def apiproduct
  @apiproduct
end

#billing_periodString

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

Returns:

  • (String)


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

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



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

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)


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

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)


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

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)


9487
9488
9489
# File 'lib/google/apis/apigee_v1/classes.rb', line 9487

def currency_code
  @currency_code
end

#descriptionString

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

Returns:

  • (String)


9492
9493
9494
# File 'lib/google/apis/apigee_v1/classes.rb', line 9492

def description
  @description
end

#display_nameString

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

Returns:

  • (String)


9497
9498
9499
# File 'lib/google/apis/apigee_v1/classes.rb', line 9497

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)


9503
9504
9505
# File 'lib/google/apis/apigee_v1/classes.rb', line 9503

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)


9508
9509
9510
# File 'lib/google/apis/apigee_v1/classes.rb', line 9508

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



9513
9514
9515
# File 'lib/google/apis/apigee_v1/classes.rb', line 9513

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)


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

def last_modified_at
  @last_modified_at
end

#nameString

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

Returns:

  • (String)


9523
9524
9525
# File 'lib/google/apis/apigee_v1/classes.rb', line 9523

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)


9531
9532
9533
# File 'lib/google/apis/apigee_v1/classes.rb', line 9531

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



9536
9537
9538
# File 'lib/google/apis/apigee_v1/classes.rb', line 9536

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)


9541
9542
9543
# File 'lib/google/apis/apigee_v1/classes.rb', line 9541

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



9546
9547
9548
# File 'lib/google/apis/apigee_v1/classes.rb', line 9546

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)


9551
9552
9553
# File 'lib/google/apis/apigee_v1/classes.rb', line 9551

def start_time
  @start_time
end

#stateString

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

Returns:

  • (String)


9556
9557
9558
# File 'lib/google/apis/apigee_v1/classes.rb', line 9556

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
# File 'lib/google/apis/apigee_v1/classes.rb', line 9563

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