# REST Resource: advertisers.insertionOrders

> [!WARNING]
> Display \& Video 360 API v2 has sunset.

- [Resource: InsertionOrder](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrder)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrder.SCHEMA_REPRESENTATION)
- [InsertionOrderType](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderType)
- [InsertionOrderBudget](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudget)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudget.SCHEMA_REPRESENTATION)
- [InsertionOrderAutomationType](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderAutomationType)
- [InsertionOrderBudgetSegment](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudgetSegment)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudgetSegment.SCHEMA_REPRESENTATION)
- [BillableOutcome](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#BillableOutcome)
- [Methods](https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#METHODS_SUMMARY)

## Resource: InsertionOrder

A single insertion order.

| JSON representation |
|---|
| ``` { "name": string, "advertiserId": string, "campaignId": string, "insertionOrderId": string, "displayName": string, "insertionOrderType": enum (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderType`), "entityStatus": enum (`https://developers.google.com/display-video/api/reference/rest/v2/EntityStatus`), "updateTime": string, "partnerCosts": [ { object (`https://developers.google.com/display-video/api/reference/rest/v2/PartnerCost`) } ], "pacing": { object (`https://developers.google.com/display-video/api/reference/rest/v2/Pacing`) }, "frequencyCap": { object (`https://developers.google.com/display-video/api/reference/rest/v2/FrequencyCap`) }, "integrationDetails": { object (`https://developers.google.com/display-video/api/reference/rest/v2/IntegrationDetails`) }, "performanceGoal": { object (`https://developers.google.com/display-video/api/reference/rest/v2/PerformanceGoal`) }, "budget": { object (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudget`) }, "bidStrategy": { object (`https://developers.google.com/display-video/api/reference/rest/v2/BiddingStrategy`) }, "reservationType": enum (`https://developers.google.com/display-video/api/reference/rest/v2/ReservationType`), "billableOutcome": enum (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#BillableOutcome`) } ``` |

| Fields ||
|---|---|
| `name` | `string` Output only. The resource name of the insertion order. |
| `advertiserId` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The unique ID of the advertiser the insertion order belongs to. |
| `campaignId` | `string (https://developers.google.com/discovery/v1/type-format format)` Required. Immutable. The unique ID of the campaign that the insertion order belongs to. |
| `insertionOrderId` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The unique ID of the insertion order. Assigned by the system. |
| `displayName` | `string` Required. The display name of the insertion order. Must be UTF-8 encoded with a maximum size of 240 bytes. |
| `insertionOrderType` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderType`)`` The type of insertion order. If this field is unspecified in creation, the value defaults to `RTB`. |
| `entityStatus` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v2/EntityStatus`)`` Required. Controls whether or not the insertion order can spend its budget and bid on inventory. - For `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/create#google.ads.displayvideo.v2.InsertionOrderService.CreateInsertionOrder` method, only `ENTITY_STATUS_DRAFT` is allowed. To activate an insertion order, use `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/patch#google.ads.displayvideo.v2.InsertionOrderService.UpdateInsertionOrder` method and update the status to `ENTITY_STATUS_ACTIVE` after creation. - An insertion order cannot be changed back to `ENTITY_STATUS_DRAFT` status from any other status. - An insertion order cannot be set to `ENTITY_STATUS_ACTIVE` if its parent campaign is not active. |
| `updateTime` | ``string (`https://protobuf.dev/reference/protobuf/google.protobuf#timestamp` format)`` Output only. The timestamp when the insertion order was last updated. Assigned by the system. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: `"2014-10-02T15:01:23Z"` and `"2014-10-02T15:01:23.045123456Z"`. |
| `partnerCosts[]` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/PartnerCost`)`` The partner costs associated with the insertion order. If absent or empty in `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/create#google.ads.displayvideo.v2.InsertionOrderService.CreateInsertionOrder` method, the newly created insertion order will inherit partner costs from the partner settings. |
| `pacing` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/Pacing`)`` Required. The budget spending speed setting of the insertion order. <br /> > [!WARNING] > **Warning** : Starting on **November 5, 2024** , `https://developers.google.com/display-video/api/reference/rest/v2/Pacing#FIELDS.pacing_type` `PACING_TYPE_ASAP` will no longer be compatible with `https://developers.google.com/display-video/api/reference/rest/v2/Pacing#FIELDS.pacing_period` `PACING_PERIOD_FLIGHT`. [Read more about this announced change](https://developers.google.com/display-video/api/deprecations#features.io_asap). <br /> |
| `frequencyCap` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/FrequencyCap`)`` Required. The frequency capping setting of the insertion order. |
| `integrationDetails` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/IntegrationDetails`)`` Additional integration details of the insertion order. |
| `performanceGoal` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/PerformanceGoal`)`` Required. Performance goal of the insertion order. |
| `budget` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudget`)`` Required. The budget allocation settings of the insertion order. |
| `bidStrategy` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/BiddingStrategy`)`` The bidding strategy of the insertion order. By default, `https://developers.google.com/display-video/api/reference/rest/v2/BiddingStrategy#FIELDS.fixed_bid` is set. |
| `reservationType` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v2/ReservationType`)`` Output only. The reservation type of the insertion order. |
| `billableOutcome` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#BillableOutcome`)`` Immutable. The billable outcome of the insertion order. Outcome based buying is deprecated. `BILLABLE_OUTCOME_PAY_PER_IMPRESSION` is the only valid value. |

## InsertionOrderType

Possible types of an Insertion Order.

The type of the Insertion Order determines which settings and options are applicable, such as the format of the ads or targeting options.

| Enums ||
|---|---|
| `INSERTION_ORDER_TYPE_UNSPECIFIED` | Insertion order type is not specified or is unknown. |
| `RTB` | Real-time bidding. |
| `OVER_THE_TOP` | Over-the-top. |

## InsertionOrderBudget

Settings that control how insertion order budget is allocated.

| JSON representation |
|---|
| ``` { "budgetUnit": enum (`https://developers.google.com/display-video/api/reference/rest/v2/BudgetUnit`), "automationType": enum (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderAutomationType`), "budgetSegments": [ { object (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudgetSegment`) } ] } ``` |

| Fields ||
|---|---|
| `budgetUnit` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v2/BudgetUnit`)`` Required. Immutable. The budget unit specifies whether the budget is currency based or impression based. |
| `automationType` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderAutomationType`)`` The type of automation used to manage bid and budget for the insertion order. If this field is unspecified in creation, the value defaults to `INSERTION_ORDER_AUTOMATION_TYPE_NONE`. |
| `budgetSegments[]` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudgetSegment`)`` Required. The list of budget segments. Use a budget segment to specify a specific budget for a given period of time an insertion order is running. |

## InsertionOrderAutomationType

Possible options for automating insertion order bid and budget.

| Enums ||
|---|---|
| `INSERTION_ORDER_AUTOMATION_TYPE_UNSPECIFIED` | Insertion order automation option is not specified or is unknown in this version. |
| `INSERTION_ORDER_AUTOMATION_TYPE_BUDGET` | Automatic budget allocation. Allow the system to automatically shift budget to owning line items to optimize performance defined by `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrder.FIELDS.performance_goal`. No automation on bid settings. |
| `INSERTION_ORDER_AUTOMATION_TYPE_NONE` | No automation of bid or budget on insertion order level. Bid and budget must be manually configured at the line item level. |
| `INSERTION_ORDER_AUTOMATION_TYPE_BID_BUDGET` | Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrder.FIELDS.performance_goal`. |

## InsertionOrderBudgetSegment

Settings that control the budget of a single budget segment.

| JSON representation |
|---|
| ``` { "budgetAmountMicros": string, "description": string, "dateRange": { object (`https://developers.google.com/display-video/api/reference/rest/v2/DateRange`) }, "campaignBudgetId": string } ``` |

| Fields ||
|---|---|
| `budgetAmountMicros` | `string (https://developers.google.com/discovery/v1/type-format format)` Required. The budget amount the insertion order will spend for the given `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders#InsertionOrderBudgetSegment.FIELDS.date_range`. The amount is in micros. Must be greater than 0. For example, 500000000 represents 500 standard units of the currency. |
| `description` | `string` The budget segment description. It can be used to enter Purchase Order information for each budget segment and have that information printed on the invoices. Must be UTF-8 encoded. |
| `dateRange` | ``object (`https://developers.google.com/display-video/api/reference/rest/v2/DateRange`)`` Required. The start and end date settings of the budget segment. They are resolved relative to the parent advertiser's time zone. - When creating a new budget segment, both `startDate` and `endDate` must be in the future. - An existing budget segment with a `startDate` in the past has a mutable `endDate` but an immutable `startDate`. - `endDate` must be the `startDate` or later, both before the year 2037. |
| `campaignBudgetId` | `string (https://developers.google.com/discovery/v1/type-format format)` The `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.campaigns#CampaignBudget.FIELDS.budget_id` of the campaign budget that this insertion order budget segment is a part of. |

## BillableOutcome

Possible billable outcomes for an insertion order.

| Enums ||
|---|---|
| `BILLABLE_OUTCOME_UNSPECIFIED` | Unspecified billable outcome. |
| `BILLABLE_OUTCOME_PAY_PER_IMPRESSION` | Pay per impressions. |
| `BILLABLE_OUTCOME_PAY_PER_CLICK` | Pay per click. > [!WARNING] > This item is deprecated! |
| `BILLABLE_OUTCOME_PAY_PER_VIEWABLE_IMPRESSION` | Pay per active view. > [!WARNING] > This item is deprecated! |

| ## Methods ||
|---|---|
| ### `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/create` | Creates a new insertion order. |
| ### `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/delete` | Deletes an insertion order. |
| ### `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/get` | Gets an insertion order. |
| ### `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/list` | Lists insertion orders in an advertiser. |
| ### `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/listAssignedTargetingOptions` | Lists assigned targeting options of an insertion order across targeting types. |
| ### `https://developers.google.com/display-video/api/reference/rest/v2/advertisers.insertionOrders/patch` | Updates an existing insertion order. |