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.



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

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)


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

def apiproduct
  @apiproduct
end

#billing_periodString

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

Returns:

  • (String)


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

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



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

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)


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

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)


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

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)


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

def currency_code
  @currency_code
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#display_nameString

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

Returns:

  • (String)


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

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)


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

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)


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

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



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

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)


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

def last_modified_at
  @last_modified_at
end

#nameString

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

Returns:

  • (String)


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

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)


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

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



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

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)


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

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



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

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)


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

def start_time
  @start_time
end

#stateString

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

Returns:

  • (String)


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

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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