RatePlanArgs

data class RatePlanArgs(val apiproduct: Output<String>? = null, val apiproductId: Output<String>? = null, val billingPeriod: Output<RatePlanBillingPeriod>? = null, val consumptionPricingRates: Output<List<GoogleCloudApigeeV1RateRangeArgs>>? = null, val consumptionPricingType: Output<RatePlanConsumptionPricingType>? = null, val currencyCode: Output<String>? = null, val description: Output<String>? = null, val displayName: Output<String>? = null, val endTime: Output<String>? = null, val fixedFeeFrequency: Output<Int>? = null, val fixedRecurringFee: Output<GoogleTypeMoneyArgs>? = null, val organizationId: Output<String>? = null, val paymentFundingModel: Output<RatePlanPaymentFundingModel>? = null, val revenueShareRates: Output<List<GoogleCloudApigeeV1RevenueShareRangeArgs>>? = null, val revenueShareType: Output<RatePlanRevenueShareType>? = null, val setupFee: Output<GoogleTypeMoneyArgs>? = null, val startTime: Output<String>? = null, val state: Output<RatePlanState>? = null) : ConvertibleToJava<RatePlanArgs>

Create a rate plan that is associated with an API product in an organization. Using rate plans, API product owners can monetize their API products by configuring one or more of the following: - Billing frequency - Initial setup fees for using an API product - Payment funding model (postpaid only) - Fixed recurring or consumption-based charges for using an API product - Revenue sharing with developer partners An API product can have multiple rate plans associated with it but only one rate plan can be active at any point of time. **Note: From the developer's perspective, they purchase API products not rate plans. Auto-naming is currently not supported for this resource.

Constructors

Link copied to clipboard
fun RatePlanArgs(apiproduct: Output<String>? = null, apiproductId: Output<String>? = null, billingPeriod: Output<RatePlanBillingPeriod>? = null, consumptionPricingRates: Output<List<GoogleCloudApigeeV1RateRangeArgs>>? = null, consumptionPricingType: Output<RatePlanConsumptionPricingType>? = null, currencyCode: Output<String>? = null, description: Output<String>? = null, displayName: Output<String>? = null, endTime: Output<String>? = null, fixedFeeFrequency: Output<Int>? = null, fixedRecurringFee: Output<GoogleTypeMoneyArgs>? = null, organizationId: Output<String>? = null, paymentFundingModel: Output<RatePlanPaymentFundingModel>? = null, revenueShareRates: Output<List<GoogleCloudApigeeV1RevenueShareRangeArgs>>? = null, revenueShareType: Output<RatePlanRevenueShareType>? = null, setupFee: Output<GoogleTypeMoneyArgs>? = null, startTime: Output<String>? = null, state: Output<RatePlanState>? = null)

Functions

Link copied to clipboard
open override fun toJava(): RatePlanArgs

Properties

Link copied to clipboard
val apiproduct: Output<String>? = null

Name of the API product that the rate plan is associated with.

Link copied to clipboard
val apiproductId: Output<String>? = null
Link copied to clipboard

Frequency at which the customer will be billed.

Link copied to clipboard

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 STAIRSTEP and the ranges are defined as follows: `` { "start": 1, "end": 100, "fee": 75 }, { "start": 101, "end": 200, "fee": 100 }, } `` Then the following fees would be charged based on the total number of API calls (assuming the currency selected is USD): * 1 call costs $75 * 50 calls cost $75 * 150 calls cost $100 The number of API calls cannot exceed 200. @property consumptionPricingType Pricing model used for consumption-based charges. @property currencyCode Currency to be used for billing. Consists of a three-letter code as defined by the ISO 4217 standard. @property description Description of the rate plan. @property displayName Display name of the rate plan. @property endTime 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. @property fixedFeeFrequency Frequency at which the fixed fee is charged. @property fixedRecurringFee Fixed amount that is charged at a defined interval and billed in advance of use of the API product. The fee will be prorated for the first billing period. @property organizationId @property paymentFundingModel 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. @property revenueShareRates Details of the revenue sharing model. @property revenueShareType Method used to calculate the revenue that is shared with developers. @property setupFee Initial, one-time fee paid when purchasing the API product. @property startTime Time when the rate plan becomes active in milliseconds since epoch. @property state Current state of the rate plan (draft or published).

Link copied to clipboard
Link copied to clipboard
val currencyCode: Output<String>? = null
Link copied to clipboard
val description: Output<String>? = null
Link copied to clipboard
val displayName: Output<String>? = null
Link copied to clipboard
val endTime: Output<String>? = null
Link copied to clipboard
val fixedFeeFrequency: Output<Int>? = null
Link copied to clipboard
Link copied to clipboard
val organizationId: Output<String>? = null
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val setupFee: Output<GoogleTypeMoneyArgs>? = null
Link copied to clipboard
val startTime: Output<String>? = null
Link copied to clipboard
val state: Output<RatePlanState>? = null