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.



9613
9614
9615
# File 'lib/google/apis/apigee_v1/classes.rb', line 9613

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)


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

def apiproduct
  @apiproduct
end

#billing_periodString

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

Returns:

  • (String)


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

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



9526
9527
9528
# File 'lib/google/apis/apigee_v1/classes.rb', line 9526

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)


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

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)


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

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)


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

def currency_code
  @currency_code
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#display_nameString

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

Returns:

  • (String)


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

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)


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

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)


9563
9564
9565
# File 'lib/google/apis/apigee_v1/classes.rb', line 9563

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



9568
9569
9570
# File 'lib/google/apis/apigee_v1/classes.rb', line 9568

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)


9573
9574
9575
# File 'lib/google/apis/apigee_v1/classes.rb', line 9573

def last_modified_at
  @last_modified_at
end

#nameString

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

Returns:

  • (String)


9578
9579
9580
# File 'lib/google/apis/apigee_v1/classes.rb', line 9578

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)


9586
9587
9588
# File 'lib/google/apis/apigee_v1/classes.rb', line 9586

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



9591
9592
9593
# File 'lib/google/apis/apigee_v1/classes.rb', line 9591

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)


9596
9597
9598
# File 'lib/google/apis/apigee_v1/classes.rb', line 9596

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



9601
9602
9603
# File 'lib/google/apis/apigee_v1/classes.rb', line 9601

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)


9606
9607
9608
# File 'lib/google/apis/apigee_v1/classes.rb', line 9606

def start_time
  @start_time
end

#stateString

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

Returns:

  • (String)


9611
9612
9613
# File 'lib/google/apis/apigee_v1/classes.rb', line 9611

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
# File 'lib/google/apis/apigee_v1/classes.rb', line 9618

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