Starting September 8, 2025, every new line item will need to declare whether or not they will serve Eurpoean Union (EU) political ads. Display & Video 360 API and SDF uploads that don't provide declarations will fail. See our deprecations page for more details on how to update your integration to make this declaration.
Required. The ID of the parent channel to which the sites belong.
Union parameter owner. Required. Identifies the DV360 entity that owns the parent channel. It can be either a partner or an advertiser. owner can be only one of the following:
The ID of the advertiser that owns the parent channel.
Request body
The request body contains data with the following structure:
JSON representation
{"deletedSites": [string],"createdSites": [{object (Site)}],// Union field owner can be only one of the following:"partnerId": string// End of list of possible types for union field owner.}
Fields
deletedSites[]
string
The sites to delete in batch, specified as a list of site url_or_app_ids.
The sites to create in batch, specified as a list of Sites.
Union field owner. Required. Identifies the DV360 entity that owns the parent channel. It can be either a partner or an advertiser. owner can be only one of the following:
[[["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 2025-03-27 UTC."],[],[],null,["- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nBulk edits sites under a single channel.\n\nThe operation will delete the sites provided in [BulkEditSitesRequest.deleted_sites](/display-video/api/reference/rest/v4/partners.channels.sites/bulkEdit#body.request_body.FIELDS.deleted_sites) and then create the sites provided in [BulkEditSitesRequest.created_sites](/display-video/api/reference/rest/v4/partners.channels.sites/bulkEdit#body.request_body.FIELDS.created_sites).\n\nHTTP request\n\n`POST https://displayvideo.googleapis.com/v4/advertisers/{advertiserId}/channels/{channelId}/sites:bulkEdit`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\nPath parameters\n\n| Parameters ||\n|----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `channelId` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` Required. The ID of the parent channel to which the sites belong. |\n| Union parameter `owner`. Required. Identifies the DV360 entity that owns the parent channel. It can be either a partner or an advertiser. `owner` can be only one of the following: ||\n| `advertiserId` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` The ID of the advertiser that owns the parent channel. |\n\nRequest body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"deletedSites\": [ string ], \"createdSites\": [ { object (/display-video/api/reference/rest/v4/advertisers.channels.sites#Site) } ], // Union field `owner` can be only one of the following: \"partnerId\": string // End of list of possible types for union field `owner`. } ``` |\n\n| Fields ||\n|------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `deletedSites[]` | `string` The sites to delete in batch, specified as a list of site [url_or_app_ids](/display-video/api/reference/rest/v4/advertisers.channels.sites#Site.FIELDS.url_or_app_id). |\n| `createdSites[]` | `object (`[Site](/display-video/api/reference/rest/v4/advertisers.channels.sites#Site)`)` The sites to create in batch, specified as a list of [Sites](/display-video/api/reference/rest/v4/advertisers.channels.sites#Site). |\n| Union field `owner`. Required. Identifies the DV360 entity that owns the parent channel. It can be either a partner or an advertiser. `owner` can be only one of the following: ||\n| `partnerId` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` The ID of the partner that owns the parent channel. |\n| `advertiserId` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` The ID of the advertiser that owns the parent channel. |\n\nResponse body\n\nIf successful, the response body contains an instance of [BulkEditSitesResponse](/display-video/api/reference/rest/v4/BulkEditSitesResponse).\n\nAuthorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/display-video`\n\nFor more information, see the [OAuth 2.0 Overview](/identity/protocols/OAuth2)."]]