Offer
Stay organized with collections
Save and categorize content based on your preferences.
Details of data plans in the offer being extended to the user.
JSON representation |
{
"planName": string,
"planId": string,
"planDescription": string,
"promoMessage": string,
"overusagePolicy": enum (OverUsagePolicy ),
"maxRateKbps": string,
"cost": {
object (Money )
},
"duration": string,
"offerContext": string,
"trafficCategories": [
enum (PlanModuleTrafficCategory )
],
"connectionType": enum (ConnectionType ),
"refreshPeriod": enum (RefreshPeriod ),
"offerType": enum (OfferType ),
// Union field quota can be only one of the following:
"quotaBytes": string,
"quotaMinutes": integer
// End of list of possible types for union field quota .
} |
Fields |
planName |
string
Required. A string which identifies the offer to the user.
|
planId |
string
Required. A unique string that can be used to uniquely identify the offer and subsequently purchase if the user wishes.
|
planDescription |
string
Required. A longer string which describes offer to the user.
|
promoMessage |
string
String describing the promotion.
|
overusagePolicy |
enum (OverUsagePolicy )
Determines what happens if the user ends up using more than the amount of data that is being offered. Currently supported options are: throttled, blocked, and pay-as-you-go which deducts balance from the user account.
|
maxRateKbps |
string (int64 format)
The maximum bandwidth that the plan offers to the user. The information could be shown to the user when the offer is presented.
|
cost |
object (Money )
Required. Cost of this plan.
|
duration |
string (Duration format)
Number of seconds for which the plan is valid once the plan is activated. A duration in seconds with up to nine fractional digits, terminated by 's '. Example: "3.5s" .
|
offerContext |
string
Offer context, used in TransactionRequest message.
|
trafficCategories[] |
enum (PlanModuleTrafficCategory )
List of traffic categories that will be charged against this plan module.
|
connectionType |
enum (ConnectionType )
Type of connection extended as part of this offer.
|
refreshPeriod |
enum (RefreshPeriod )
The refresh period of this plan offer, or REFRESH_PERIOD_NONE if the plan does not refresh its quota. Plans that refresh quota will do so once every refresh period.
|
offerType |
enum (OfferType )
Identify the type of offer. Based on the type of offer, the user experience with the offer purchase can be customized by the client.
|
Union field quota . Plan quota information, should be one of the following: quota_bytes, quota_minutes. quota can be only one of the following: |
quotaBytes |
string (int64 format)
Package quota in bytes.
|
quotaMinutes |
integer
Package quota in minutes.
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-10-03 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2023-10-03 UTC."],[[["\u003cp\u003eThe JSON representation defines the structure for detailing data plans offered to users, including plan details, cost, duration, and usage policies.\u003c/p\u003e\n"],["\u003cp\u003eThis structure includes fields for plan identification, description, promotional messages, overusage policies, and technical specifications like bandwidth and connection type.\u003c/p\u003e\n"],["\u003cp\u003eIt also outlines the cost, duration, and refresh periods of the plans, along with traffic categories and offer types.\u003c/p\u003e\n"],["\u003cp\u003ePlan quota is represented either in bytes (\u003ccode\u003equotaBytes\u003c/code\u003e) or minutes (\u003ccode\u003equotaMinutes\u003c/code\u003e), providing flexibility in defining data or voice/call plans.\u003c/p\u003e\n"],["\u003cp\u003eThis comprehensive schema ensures clear and standardized communication of data plan details between systems and users.\u003c/p\u003e\n"]]],[],null,["# Offer\n\n- [JSON representation](#SCHEMA_REPRESENTATION)\n\nDetails of data plans in the offer being extended to the user.\n\n| JSON representation ||\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|\n| ``` { \"planName\": string, \"planId\": string, \"planDescription\": string, \"promoMessage\": string, \"overusagePolicy\": enum (/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.OverUsagePolicy), \"maxRateKbps\": string, \"cost\": { object (/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.Money) }, \"duration\": string, \"offerContext\": string, \"trafficCategories\": [ enum (/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.PlanModuleTrafficCategory) ], \"connectionType\": enum (/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.ConnectionType), \"refreshPeriod\": enum (/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.RefreshPeriod), \"offerType\": enum (/mobile-data-plan/reference/rest/v1/OfferType), // Union field `quota` can be only one of the following: \"quotaBytes\": string, \"quotaMinutes\": integer // End of list of possible types for union field `quota`. } ``` |\n\n| Fields ||\n|-----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|\n| `planName` | `string` Required. A string which identifies the offer to the user. |\n| `planId` | `string` Required. A unique string that can be used to uniquely identify the offer and subsequently purchase if the user wishes. |\n| `planDescription` | `string` Required. A longer string which describes offer to the user. |\n| `promoMessage` | `string` String describing the promotion. |\n| `overusagePolicy` | `enum (`[OverUsagePolicy](/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.OverUsagePolicy)`)` Determines what happens if the user ends up using more than the amount of data that is being offered. Currently supported options are: throttled, blocked, and pay-as-you-go which deducts balance from the user account. |\n| `maxRateKbps` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` The maximum bandwidth that the plan offers to the user. The information could be shown to the user when the offer is presented. |\n| `cost` | `object (`[Money](/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.Money)`)` Required. Cost of this plan. |\n| `duration` | `string (`[Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration)` format)` Number of seconds for which the plan is valid once the plan is activated. A duration in seconds with up to nine fractional digits, terminated by '`s`'. Example: `\"3.5s\"`. |\n| `offerContext` | `string` Offer context, used in TransactionRequest message. |\n| `trafficCategories[]` | `enum (`[PlanModuleTrafficCategory](/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.PlanModuleTrafficCategory)`)` List of traffic categories that will be charged against this plan module. |\n| `connectionType` | `enum (`[ConnectionType](/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.ConnectionType)`)` Type of connection extended as part of this offer. |\n| `refreshPeriod` | `enum (`[RefreshPeriod](/mobile-data-plan/reference/rest/v1/operators.clients.users.planStatus#PlanStatus.RefreshPeriod)`)` The refresh period of this plan offer, or REFRESH_PERIOD_NONE if the plan does not refresh its quota. Plans that refresh quota will do so once every refresh period. |\n| `offerType` | `enum (`[OfferType](/mobile-data-plan/reference/rest/v1/OfferType)`)` Identify the type of offer. Based on the type of offer, the user experience with the offer purchase can be customized by the client. |\n| Union field `quota`. Plan quota information, should be one of the following: quota_bytes, quota_minutes. `quota` can be only one of the following: |||\n| `quotaBytes` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` Package quota in bytes. |\n| `quotaMinutes` | `integer` Package quota in minutes. |"]]