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.



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

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)


9402
9403
9404
# File 'lib/google/apis/apigee_v1/classes.rb', line 9402

def apiproduct
  @apiproduct
end

#billing_periodString

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

Returns:

  • (String)


9407
9408
9409
# File 'lib/google/apis/apigee_v1/classes.rb', line 9407

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



9421
9422
9423
# File 'lib/google/apis/apigee_v1/classes.rb', line 9421

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)


9426
9427
9428
# File 'lib/google/apis/apigee_v1/classes.rb', line 9426

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)


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

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)


9437
9438
9439
# File 'lib/google/apis/apigee_v1/classes.rb', line 9437

def currency_code
  @currency_code
end

#descriptionString

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

Returns:

  • (String)


9442
9443
9444
# File 'lib/google/apis/apigee_v1/classes.rb', line 9442

def description
  @description
end

#display_nameString

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

Returns:

  • (String)


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

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)


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

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)


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

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



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

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)


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

def last_modified_at
  @last_modified_at
end

#nameString

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

Returns:

  • (String)


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

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)


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

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



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

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)


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

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



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

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)


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

def start_time
  @start_time
end

#stateString

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

Returns:

  • (String)


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

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
# File 'lib/google/apis/apigee_v1/classes.rb', line 9513

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