# type AvailabilityForecast (v202505)

**Service** **ForecastService** **Dependencies** [getAvailabilityForecast()](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService#getAvailabilityForecast) [getAvailabilityForecastById()](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService#getAvailabilityForecastById) ▼ **AvailabilityForecast**


Describes predicted inventory availability for a [ProspectiveLineItem](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ProspectiveLineItem).

Inventory has three threshold values along a line of possible
inventory. From least to most, these are:

- Available units -- How many units can be booked without affecting any other line items. Booking more than this number can cause lower and same priority line items to underdeliver.
- Possible units -- How many units can be booked without affecting any higher priority line items. Booking more than this number can cause the line item to underdeliver.
- Matched (forecast) units -- How many units satisfy all specified criteria.

Underdelivery is caused by overbooking. However, if more
impressions are served than are predicted, the extra available
inventory might enable all inventory guarantees to be met without
overbooking.

*** ** * ** ***

Namespace
:
    `https://www.google.com/apis/ads/publisher/v202505`

| ## Field ||
|---|---|
| ### `lineItemId` | ` xsd:long` Uniquely identifies this availability forecast. This value is read-only and is assigned by Google when the forecast is created. The attribute will be either the ID of the [LineItem](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem) object it represents, or `null` if the forecast represents a prospective line item. |
| ### `orderId` | ` xsd:long` The unique ID for the [Order](https://developers.google.com/ad-manager/api/reference/v202505/OrderService.Order) object that this line item belongs to, or `null` if the forecast represents a prospective line item without an [LineItem.orderId](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#orderId) set. |
| ### `unitType` | ` https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.UnitType ` The unit with which the goal or cap of the [LineItem](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem) is defined. Will be the same value as [Goal.unitType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.Goal#unitType) for both a set line item or a prospective one. *** ** * ** *** **Enumerations** `IMPRESSIONS` :   The number of impressions served by creatives associated with the line item. Line items of all [LineItemType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItemType) support this `UnitType`. `CLICKS` :   The number of clicks reported by creatives associated with the line item. The [LineItem.lineItemType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#lineItemType) must be [LineItemType.STANDARD](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItemType#STANDARD), [LineItemType.BULK](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItemType#BULK) or [LineItemType.PRICE_PRIORITY](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItemType#PRICE_PRIORITY). `CLICK_THROUGH_CPA_CONVERSIONS` :   The number of click-through Cost-Per-Action (CPA) conversions from creatives associated with the line item. This is only supported as secondary goal and the [LineItem.costType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#costType) must be [CostType.CPA](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.CostType#CPA). `VIEW_THROUGH_CPA_CONVERSIONS` :   The number of view-through Cost-Per-Action (CPA) conversions from creatives associated with the line item. This is only supported as secondary goal and the [LineItem.costType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#costType) must be [CostType.CPA](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.CostType#CPA). `TOTAL_CPA_CONVERSIONS` :   The number of total Cost-Per-Action (CPA) conversions from creatives associated with the line item. This is only supported as secondary goal and the [LineItem.costType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#costType) must be [CostType.CPA](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.CostType#CPA). `VIEWABLE_IMPRESSIONS` :   The number of viewable impressions reported by creatives associated with the line item. The [LineItem.lineItemType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#lineItemType) must be [LineItemType.STANDARD](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItemType#STANDARD). `IN_TARGET_IMPRESSIONS` :   The number of in-target impressions reported by third party measurements. The [LineItem.lineItemType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem#lineItemType) must be [LineItemType.STANDARD](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItemType#STANDARD). `UNKNOWN` :   The value returned if the actual value is not exposed by the requested API version. <br /> |
| ### `availableUnits` | ` xsd:long` The number of units, defined by [Goal.unitType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.Goal#unitType), that can be booked without affecting the delivery of any reserved line items. Exceeding this value will not cause an overbook, but lower priority line items may not run. |
| ### `deliveredUnits` | ` xsd:long` The number of units, defined by [Goal.unitType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.Goal#unitType), that have already been served if the reservation is already running. |
| ### `matchedUnits` | ` xsd:long` The number of units, defined by [Goal.unitType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.Goal#unitType), that match the specified targeting and delivery settings. |
| ### `possibleUnits` | ` xsd:long` The maximum number of units, defined by [Goal.unitType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.Goal#unitType), that could be booked by taking inventory away from lower priority line items and some same priority line items. Please note: booking this number may cause lower priority line items and some same priority line items to underdeliver. <br /> |
| ### `reservedUnits` | ` xsd:long` The number of reserved units, defined by [Goal.unitType](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.Goal#unitType), requested. This can be an absolute or percentage value. |
| ### `breakdowns` | ` https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdown[]` The breakdowns for each time window defined in [ForecastBreakdownOptions.timeWindows](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdownOptions#timeWindows). If no breakdown was requested through [AvailabilityForecastOptions.breakdown](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.AvailabilityForecastOptions#breakdown), this field will be empty. If targeting breakdown was requested by [ForecastBreakdownOptions.targets](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdownOptions#targets) with no time breakdown, this list will contain a single [ForecastBreakdown](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdown) corresponding to the time window of the forecasted [LineItem](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.LineItem). Otherwise, each time window defined by [ForecastBreakdownOptions.timeWindows](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdownOptions#timeWindows) will correspond to one [ForecastBreakdown](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdown) in the same order. Targeting breakdowns for every time window are returned in [ForecastBreakdown.breakdownEntries](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ForecastBreakdown#breakdownEntries). Some examples: For a targeting breakdown in the form of `ForecastBreakdownOptions{targets=[IU=A, {IU=B, creative=1x1`\]}}, the [breakdowns](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.AvailabilityForecast#breakdowns) field may look like: `[ForecastBreakdown{breakdownEntries=[availableUnits=10, availableUnits=20]`\]} where the entries correspond to `{IU=A`} and `{IU=B, creative=1x1`} respectively. For a time breakdown in the form of `ForecastBreakdownOptions{timeWindows=[1am, 2am, 3am]`}, the `breakdowns` field may look like: [ ForecastBreakdown{startTime=1am, endTime=2am, breakdownEntries=[availableUnits=10], ForecastBreakdown{startTime=2am, endTime=3am, breakdownEntries=[availableUnits=20]} ] } where the two [ForecastBreakdown](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.AvailabilityForecast#ForecastBreakdown) correspond to the \[1am, 2am) and \[2am, 3am) time windows respecively. For a two-dimensional breakdown in the form of `ForecastBreakdownOptions{timeWindows=[1am, 2am, 3am], targets=[IU=A, IU=B]`, the `breakdowns` field may look like: [ ForecastBreakdown{startTime=1am, endTime=2am, breakdownEntries=[availableUnits=10, availableUnits=100], ForecastBreakdown{startTime=2am, endTime=3am, breakdownEntries=[availableUnits=20, availableUnits=200]} ] } where the first ForecastBreakdown respresents the \[1am, 2am) time window with two entries for the IU A and IU B respectively; and the second ForecastBreakdown represents the \[2am, 3am) time window also with two entries corresponding to the two IUs. <br /> |
| ### `targetingCriteriaBreakdowns` | ` https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.TargetingCriteriaBreakdown[]` The forecast result broken down by the targeting of the forecasted line item. |
| ### `contendingLineItems` | ` https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ContendingLineItem[]` List of [contending line items](https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.ContendingLineItem) for this forecast. |
| ### `alternativeUnitTypeForecasts` | ` https://developers.google.com/ad-manager/api/reference/v202505/ForecastService.AlternativeUnitTypeForecast[]` Views of this forecast, with alternative unit types. |