- JSON representation
- Plan
- PaymentType
- Constraints
- CustomerConstraints
- PromotionalOrderType
- PriceByResource
- ResourceType
- Price
- DiscountComponent
- DiscountType
- PricePhase
- PriceTier
- ParameterDefinition
- ParameterType
Represents an offer made to resellers for purchase. An offer is associated with a Sku, has a plan for payment, a price, and defines the constraints for buying.
| JSON representation | 
|---|
| { "name": string, "marketingInfo": { object ( | 
| Fields | |
|---|---|
| name | 
 Resource Name of the Offer. Format: accounts/{account_id}/offers/{offer_id} | 
| marketingInfo | 
 Marketing information for the Offer. | 
| sku | 
 SKU the offer is associated with. | 
| plan | 
 Describes the payment plan for the Offer. | 
| constraints | 
 Constraints on transacting the Offer. | 
| priceByResources[] | 
 Price for each monetizable resource type. | 
| startTime | 
 Start of the Offer validity time. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| endTime | 
 Output only. End of the Offer validity time. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| parameterDefinitions[] | 
 Parameters required to use current Offer to purchase. | 
| dealCode | 
 The deal code of the offer to get a special promotion or discount. | 
Plan
The payment plan for the Offer. Describes how to make a payment.
| JSON representation | 
|---|
| { "paymentPlan": enum ( | 
| Fields | |
|---|---|
| paymentPlan | 
 Describes how a reseller will be billed. | 
| paymentType | 
 Specifies when the payment needs to happen. | 
| paymentCycle | 
 Describes how frequently the reseller will be billed, such as once per month. | 
| trialPeriod | 
 Present for Offers with a trial period. For trial-only Offers, a paid service needs to start before the trial period ends for continued service. For Regular Offers with a trial period, the regular pricing goes into effect when trial period ends, or if paid service is started before the end of the trial period. | 
| billingAccount | 
 Reseller Billing account to charge after an offer transaction. Only present for Google Cloud offers. | 
PaymentType
Specifies when the payment needs to happen.
| Enums | |
|---|---|
| PAYMENT_TYPE_UNSPECIFIED | Not used. | 
| PREPAY | Prepay. Amount has to be paid before service is rendered. | 
| POSTPAY | Postpay. Reseller is charged at the end of the Payment cycle. | 
Constraints
Represents the constraints for buying the Offer.
| JSON representation | 
|---|
| {
  "customerConstraints": {
    object ( | 
| Fields | |
|---|---|
| customerConstraints | 
 Represents constraints required to purchase the Offer for a customer. | 
CustomerConstraints
Represents constraints required to purchase the Offer for a customer.
| JSON representation | 
|---|
| { "allowedRegions": [ string ], "allowedCustomerTypes": [ enum ( | 
| Fields | |
|---|---|
| allowedRegions[] | 
 Allowed geographical regions of the customer. | 
| allowedCustomerTypes[] | 
 Allowed Customer Type. | 
| promotionalOrderTypes[] | 
 Allowed Promotional Order Type. Present for Promotional offers. | 
PromotionalOrderType
Constraints type for Promotional offers.
| Enums | |
|---|---|
| PROMOTIONAL_TYPE_UNSPECIFIED | Not used. | 
| NEW_UPGRADE | Order used for new customers, trial conversions and upgrades. | 
| TRANSFER | All orders for transferring an existing customer. | 
| PROMOTION_SWITCH | Orders for modifying an existing customer's promotion on the same SKU. | 
PriceByResource
Represents price by resource type.
| JSON representation | 
|---|
| { "resourceType": enum ( | 
| Fields | |
|---|---|
| resourceType | 
 Resource Type. Example: SEAT | 
| price | 
 Price of the Offer. Present if there are no price phases. | 
| pricePhases[] | 
 Specifies the price by time range. | 
ResourceType
Represents the type for a monetizable resource(any entity on which billing happens). For example, this could be MINUTES for Google Voice and GB for Google Drive. One SKU can map to multiple monetizable resources.
| Enums | |
|---|---|
| RESOURCE_TYPE_UNSPECIFIED | Not used. | 
| SEAT | Seat. | 
| MAU | Monthly active user. | 
| GB | GB (used for storage SKUs). | 
| LICENSED_USER | Active licensed users(for Voice SKUs). | 
| MINUTES | Voice usage. | 
| IAAS_USAGE | For IaaS SKUs like Google Cloud, monetization is based on usage accrued on your billing account irrespective of the type of monetizable resource. This enum represents an aggregated resource/container for all usage SKUs on a billing account. Currently, only applicable to Google Cloud. | 
| SUBSCRIPTION | For Google Cloud subscriptions like Anthos or SAP. | 
Price
Represents the price of the Offer.
| JSON representation | 
|---|
| { "basePrice": { object ( | 
| Fields | |
|---|---|
| basePrice | 
 Base price. | 
| discount | 
 Discount percentage, represented as decimal. For example, a 20% discount will be represent as 0.2. | 
| effectivePrice | 
 Effective Price after applying the discounts. | 
| pricePeriod | 
 The time period with respect to which base and effective prices are defined. Example: 1 month, 6 months, 1 year, etc. | 
| externalPriceUri | 
 Link to external price list, such as link to Google Voice rate card. | 
| discountComponents[] | 
 Breakdown of the discount into its components. This will be empty if there is no discount present. | 
DiscountComponent
Represents a single component of the total discount applicable on a Price.
| JSON representation | 
|---|
| { "discountType": enum ( | 
| Fields | |
|---|---|
| discountType | 
 Type of the discount. | 
| Union field discount_value. Specifies the contribution of this discount component to the total discount.discount_valuecan be only one of the following: | |
| discountPercentage | 
 Discount percentage, represented as decimal. For example, a 20% discount will be represented as 0.2. | 
| discountAbsolute | 
 Fixed value discount. | 
DiscountType
Discount Type.
| Enums | |
|---|---|
| DISCOUNT_TYPE_UNSPECIFIED | Not used. | 
| REGIONAL_DISCOUNT | Regional discount. | 
| PROMOTIONAL_DISCOUNT | Promotional discount. | 
| SALES_DISCOUNT | Sales-provided discount. | 
| RESELLER_MARGIN | Reseller margin. | 
| DEAL_CODE | Deal code discount. | 
PricePhase
Specifies the price by the duration of months. For example, a 20% discount for the first six months, then a 10% discount starting on the seventh month.
| JSON representation | 
|---|
| { "periodType": enum ( | 
| Fields | |
|---|---|
| periodType | 
 Defines the phase period type. | 
| firstPeriod | 
 Defines first period for the phase. | 
| lastPeriod | 
 Defines first period for the phase. | 
| price | 
 Price of the phase. Present if there are no price tiers. | 
| priceTiers[] | 
 Price by the resource tiers. | 
PriceTier
Defines price at resource tier level. For example, an offer with following definition :
- Tier 1: Provide 25% discount for all seats between 1 and 25.
- Tier 2: Provide 10% discount for all seats between 26 and 100.
- Tier 3: Provide flat 15% discount for all seats above 100.
Each of these tiers is represented as a PriceTier.
| JSON representation | 
|---|
| {
  "firstResource": integer,
  "lastResource": integer,
  "price": {
    object ( | 
| Fields | |
|---|---|
| firstResource | 
 First resource for which the tier price applies. | 
| lastResource | 
 Last resource for which the tier price applies. | 
| price | 
 Price of the tier. | 
ParameterDefinition
Parameter's definition. Specifies what parameter is required to use the current Offer to purchase.
| JSON representation | 
|---|
| { "name": string, "parameterType": enum ( | 
| Fields | |
|---|---|
| name | 
 Name of the parameter. | 
| parameterType | 
 Data type of the parameter. Minimal value, Maximum value and allowed values will use specified data type here. | 
| minValue | 
 Minimal value of the parameter, if applicable. Inclusive. For example, minimal commitment when purchasing Anthos is 0.01. Applicable to INT64 and DOUBLE parameter types. | 
| maxValue | 
 Maximum value of the parameter, if applicable. Inclusive. For example, maximum seats when purchasing Google Workspace Business Standard. Applicable to INT64 and DOUBLE parameter types. | 
| allowedValues[] | 
 If not empty, parameter values must be drawn from this list. For example, [us-west1, us-west2, ...] Applicable to STRING parameter type. | 
| optional | 
 If set to true, parameter is optional to purchase this Offer. | 
ParameterType
Data type of the parameter.
| Enums | |
|---|---|
| PARAMETER_TYPE_UNSPECIFIED | Not used. | 
| INT64 | Int64 type. | 
| STRING | String type. | 
| DOUBLE | Double type. | 
| BOOLEAN | Boolean type. |