- [Resource: BreakTemplate](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplate)
  - [JSON representation](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplate.SCHEMA_REPRESENTATION)
- [BreakTemplateMember](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplateMember)
  - [JSON representation](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplateMember.SCHEMA_REPRESENTATION)
- [AdSpotFillType](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdSpotFillType)
- [AdBreakOptimizationType](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdBreakOptimizationType)
- [AdRuleFillOrderDirection](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdRuleFillOrderDirection)
- [Methods](https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#METHODS_SUMMARY)

## Resource: BreakTemplate

A `BreakTemplate` defines what kinds of ads show at which positions within a pod. Break templates are made up of `AdSpot` objects. A break template must have a single ad spot that has `flexible` set to `true`.

| JSON representation |
|---|
| ``` { "name": string, "breakTemplateMembers": [ { object (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplateMember`) } ], "customTemplate": boolean, "adTagName": string, "displayName": string, "adBreakOptimizationType": enum (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdBreakOptimizationType`), "fillOrderDirectionType": enum (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdRuleFillOrderDirection`) } ``` |

| Fields ||
|---|---|
| `name` | `string` Identifier. The resource name of the `BreakTemplate`. Format: `networks/{networkCode}/breakTemplates/{break_template_id}` |
| `breakTemplateMembers[]` | ``object (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplateMember`)`` Optional. The list of the `BreakTemplateMember` objects in the order in which they should appear in the ad pod. Each `BreakTemplateMember` has a reference to an `AdSpot`, which defines what kinds of ads can appear at that position, as well as other metadata that defines how each ad spot should be filled. |
| `customTemplate` | `boolean` Optional. Whether this is a custom template. Custom templates get created outside of the ad rule workflow and can be referenced in ad tags. Only custom templates can have names and display names. |
| `adTagName` | `string` Optional. Name of the `BreakTemplate`. The name is case insensitive and can be referenced in ad tags. This value is required if `customTemplate` is true, and cannot be set otherwise. You can use alphanumeric characters and symbols other than the following: ", ', =, !, +, #, ,, \~, ;, \^, (, ), \<, \>, \[, \], the white space character. |
| `displayName` | `string` Optional. Descriptive name for the BreakTemplate. This value is optional if customTemplate is true, and cannot be set otherwise. |
| `adBreakOptimizationType` | ``enum (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdBreakOptimizationType`)`` Optional. The optimization type of the pod. This field is optional and defaults to `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdBreakOptimizationType.ENUM_VALUES.REVENUE`. |
| `fillOrderDirectionType` | ``enum (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdRuleFillOrderDirection`)`` Optional. The fill order direction of the pod. This value is required if `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#BreakTemplate.FIELDS.ad_break_optimization_type` is equal to `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdBreakOptimizationType.ENUM_VALUES.POSITION` and should otherwise be unset. |

## BreakTemplateMember

A building block of a pod template.

| JSON representation |
|---|
| ``` { "adSpot": string, "adSpotFillType": enum (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdSpotFillType`) } ``` |

| Fields ||
|---|---|
| `adSpot` | `string` Required. The ID of the `AdSpot` that has the settings about what kinds of ads can appear in this position of the `BreakTemplate`. |
| `adSpotFillType` | ``enum (`https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdSpotFillType`)`` Optional. The behavior for how the `AdSpot` should be filled in the context of the `BreakTemplate`. |

## AdSpotFillType

The different options for how ad spots are filled. Only some allocations of ads to subpods produce a valid final pod.

| Enums ||
|---|---|
| `AD_SPOT_FILL_TYPE_UNSPECIFIED` | Default value. This value is unused. |
| `CONDITIONAL` | The ad spot may only contain an ad when all ad spots with higher fill priority are "satisfied". |
| `OPTIONAL` | The ad spot is always "satisfied", whether empty or nonempty. |
| `REQUIRED` | If this ad spot is empty, the overall pod is invalid. |

## AdBreakOptimizationType

Defines how non-required ad spots within in an ad break are filled.

| Enums ||
|---|---|
| `AD_BREAK_OPTIMIZATION_TYPE_UNSPECIFIED` | Default value. This value is unused. |
| `POSITION` | Non-required ad spots within the ad break will be filled according to the fill order direction, potentially reducing revenue for the break. |
| `REVENUE` | Non-required ad spots within the ad break will be filled using a revenue optimizing algorithm. |

## AdRuleFillOrderDirection

Defines the fill order direction of ad breaks with `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates#AdBreakOptimizationType.ENUM_VALUES.POSITION`.

| Enums ||
|---|---|
| `AD_RULE_FILL_ORDER_DIRECTION_UNSPECIFIED` | Default value. This value is unused. |
| `EDGE_TO_CENTER` | A break template should be filled from edge to center. |
| `LEFT_TO_RIGHT` | A break template should be filled from left to right. |
| `RIGHT_TO_LEFT` | A break template should be filled from right to left. |

| ## Methods ||
|---|---|
| ### `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates/batchCreate` | Batch creates `BreakTemplate` objects. |
| ### `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates/batchUpdate` | Batch updates `BreakTemplate` objects. |
| ### `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates/create` | Creates a `BreakTemplate` object. |
| ### `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates/get` | Retrieves a `BreakTemplate` object. |
| ### `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates/list` | Lists `BreakTemplate` objects. |
| ### `https://developers.google.com/ad-manager/api/beta/reference/rest/v1/networks.breakTemplates/patch` | Updates a `BreakTemplate` object. |