> [!WARNING]
> Display \& Video 360 API v5 is currently in beta.

- [Resource: Campaign](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#Campaign)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#Campaign.SCHEMA_REPRESENTATION)
- [CampaignGoal](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoal)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoal.SCHEMA_REPRESENTATION)
- [CampaignGoalType](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoalType)
- [PerformanceGoal](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal.SCHEMA_REPRESENTATION)
- [PerformanceGoalType](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoalType)
- [CampaignFlight](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignFlight)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignFlight.SCHEMA_REPRESENTATION)
- [CampaignBudget](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignBudget)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignBudget.SCHEMA_REPRESENTATION)
- [ExternalBudgetSource](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#ExternalBudgetSource)
- [PrismaConfig](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaConfig)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaConfig.SCHEMA_REPRESENTATION)
- [PrismaType](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaType)
- [PrismaCpeCode](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaCpeCode)
  - [JSON representation](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaCpeCode.SCHEMA_REPRESENTATION)
- [Methods](https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#METHODS_SUMMARY)

## Resource: Campaign

A single campaign.

| JSON representation |
|---|
| ``` { "name": string, "advertiserId": string, "campaignId": string, "displayName": string, "entityStatus": enum (`https://developers.google.com/display-video/api/reference/rest/v5/EntityStatus`), "updateTime": string, "campaignGoal": { object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoal`) }, "campaignFlight": { object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignFlight`) }, "frequencyCap": { object (`https://developers.google.com/display-video/api/reference/rest/v5/FrequencyCap`) }, "campaignBudgets": [ { object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignBudget`) } ] } ``` |

| Fields ||
|---|---|
| `name` | `string` Output only. The resource name of the campaign. |
| `advertiserId` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The unique ID of the advertiser the campaign belongs to. |
| `campaignId` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The unique ID of the campaign. Assigned by the system. |
| `displayName` | `string` Required. The display name of the campaign. Must be UTF-8 encoded with a maximum size of 240 bytes. |
| `entityStatus` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v5/EntityStatus`)`` Required. Controls whether or not the insertion orders under this campaign can spend their budgets and bid on inventory. - Accepted values are `ENTITY_STATUS_ACTIVE`, `ENTITY_STATUS_ARCHIVED`, and `ENTITY_STATUS_PAUSED`. - For `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns/create#google.ads.displayvideo.v5.CampaignService.CreateCampaign` method, `ENTITY_STATUS_ARCHIVED` is not allowed. |
| `updateTime` | ``string (`https://protobuf.dev/reference/protobuf/google.protobuf#timestamp` format)`` Output only. The timestamp when the campaign was last updated. Assigned by the system. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: `"2014-10-02T15:01:23Z"`, `"2014-10-02T15:01:23.045123456Z"` or `"2014-10-02T15:01:23+05:30"`. |
| `campaignGoal` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoal`)`` Required. The goal of the campaign. |
| `campaignFlight` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignFlight`)`` Required. The planned spend and duration of the campaign. |
| `frequencyCap` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/FrequencyCap`)`` Required. The frequency cap setting of the campaign. <br /> > [!WARNING] > **Warning** : On **February 28, 2025** , frequency cap time periods greater than 30 days will no longer be accepted. [Read more about this announced change](https://developers.google.com/display-video/api/deprecations#features.lifetime_frequency_cap) <br /> |
| `campaignBudgets[]` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignBudget`)`` The list of budgets available to this campaign. If this field is not set, the campaign uses an unlimited budget. |

## CampaignGoal

Settings that control the goal of a campaign.

| JSON representation |
|---|
| ``` { "campaignGoalType": enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoalType`), "performanceGoal": { object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal`) } } ``` |

| Fields ||
|---|---|
| `campaignGoalType` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignGoalType`)`` Required. The type of the campaign goal. |
| `performanceGoal` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal`)`` Required. The performance goal of the campaign. Acceptable values for `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal.FIELDS.performance_goal_type` are: - `PERFORMANCE_GOAL_TYPE_CPM` - `PERFORMANCE_GOAL_TYPE_CPC` - `PERFORMANCE_GOAL_TYPE_CPA` - `PERFORMANCE_GOAL_TYPE_CPIAVC` - `PERFORMANCE_GOAL_TYPE_CTR` - `PERFORMANCE_GOAL_TYPE_VIEWABILITY` - `PERFORMANCE_GOAL_TYPE_OTHER` |

## CampaignGoalType

Possible types of campaign goals.

| Enums ||
|---|---|
| `CAMPAIGN_GOAL_TYPE_UNSPECIFIED` | Goal value is not specified or unknown in this version. |
| `CAMPAIGN_GOAL_TYPE_APP_INSTALL` | Drive app installs or engagements. |
| `CAMPAIGN_GOAL_TYPE_BRAND_AWARENESS` | Raise awareness of a brand or product. |
| `CAMPAIGN_GOAL_TYPE_OFFLINE_ACTION` | Drive offline or in-store sales. |
| `CAMPAIGN_GOAL_TYPE_ONLINE_ACTION` | Drive online action or visits. |

## PerformanceGoal

Settings that control the performance goal of a campaign.

| JSON representation |
|---|
| ``` { "performanceGoalType": enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoalType`), // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "performanceGoalAmountMicros": string, "performanceGoalPercentageMicros": string, "performanceGoalString": string // End of mutually exclusive fields. } ``` |

| Fields ||
|---|---|
| `performanceGoalType` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoalType`)`` Required. The type of the performance goal. |
| Required. The performance goal value corresponding to a given `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal.FIELDS.performance_goal_type`. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: ||
| `performanceGoalAmountMicros` | `string (https://developers.google.com/discovery/v1/type-format format)` The goal amount, in micros of the advertiser's currency. Applicable when `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal.FIELDS.performance_goal_type` is one of: - `PERFORMANCE_GOAL_TYPE_CPM` - `PERFORMANCE_GOAL_TYPE_CPC` - `PERFORMANCE_GOAL_TYPE_CPA` - `PERFORMANCE_GOAL_TYPE_CPIAVC` - `PERFORMANCE_GOAL_TYPE_VCPM` For example 1500000 represents 1.5 standard units of the currency. |
| `performanceGoalPercentageMicros` | `string (https://developers.google.com/discovery/v1/type-format format)` The decimal representation of the goal percentage in micros. Applicable when `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal.FIELDS.performance_goal_type` is one of: - `PERFORMANCE_GOAL_TYPE_CTR` - `PERFORMANCE_GOAL_TYPE_VIEWABILITY` - `PERFORMANCE_GOAL_TYPE_CLICK_CVR` - `PERFORMANCE_GOAL_TYPE_IMPRESSION_CVR` - `PERFORMANCE_GOAL_TYPE_VTR` - `PERFORMANCE_GOAL_TYPE_AUDIO_COMPLETION_RATE` - `PERFORMANCE_GOAL_TYPE_VIDEO_COMPLETION_RATE` For example, 70000 represents 7% (decimal 0.07). |
| `performanceGoalString` | `string` A key performance indicator (KPI) string, which can be empty. Must be UTF-8 encoded with a length of no more than 100 characters. Applicable when `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PerformanceGoal.FIELDS.performance_goal_type` is set to `PERFORMANCE_GOAL_TYPE_OTHER`. |
| End of mutually exclusive fields. ||

## PerformanceGoalType

Possible types of performance goals.

| Enums ||
|---|---|
| `PERFORMANCE_GOAL_TYPE_UNSPECIFIED` | Performance goal type is not specified or is unknown in this version. |
| `PERFORMANCE_GOAL_TYPE_CPM` | The performance goal is set in CPM (cost per mille). |
| `PERFORMANCE_GOAL_TYPE_CPC` | The performance goal is set in CPC (cost per click). |
| `PERFORMANCE_GOAL_TYPE_CPA` | The performance goal is set in CPA (cost per action). |
| `PERFORMANCE_GOAL_TYPE_CTR` | The performance goal is set in CTR (click-through rate) percentage. |
| `PERFORMANCE_GOAL_TYPE_VIEWABILITY` | The performance goal is set in Viewability percentage. |
| `PERFORMANCE_GOAL_TYPE_CPIAVC` | The performance goal is set as CPIAVC (cost per impression audible and visible at completion). |
| `PERFORMANCE_GOAL_TYPE_CPE` | The performance goal is set in CPE (cost per engagement). |
| `PERFORMANCE_GOAL_TYPE_CPV` | The performance goal is set in CPV (cost per view). |
| `PERFORMANCE_GOAL_TYPE_CLICK_CVR` | The performance goal is set in click conversion rate (conversions per click) percentage. |
| `PERFORMANCE_GOAL_TYPE_IMPRESSION_CVR` | The performance goal is set in impression conversion rate (conversions per impression) percentage. |
| `PERFORMANCE_GOAL_TYPE_VCPM` | The performance goal is set in VCPM (cost per thousand viewable impressions). |
| `PERFORMANCE_GOAL_TYPE_VTR` | The performance goal is set in YouTube view rate (YouTube views per impression) percentage. |
| `PERFORMANCE_GOAL_TYPE_AUDIO_COMPLETION_RATE` | The performance goal is set in audio completion rate (complete audio listens per impression) percentage. |
| `PERFORMANCE_GOAL_TYPE_VIDEO_COMPLETION_RATE` | The performance goal is set in video completion rate (complete video views per impression) percentage. |
| `PERFORMANCE_GOAL_TYPE_OTHER` | The performance goal is set to Other. |

## CampaignFlight

Settings that track the planned spend and duration of a campaign.

| JSON representation |
|---|
| ``` { "plannedSpendAmountMicros": string, "plannedDates": { object (`https://developers.google.com/display-video/api/reference/rest/v5/DateRange`) } } ``` |

| Fields ||
|---|---|
| `plannedSpendAmountMicros` | `string (https://developers.google.com/discovery/v1/type-format format)` The amount the campaign is expected to spend for its given `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignFlight.FIELDS.planned_dates`. This will not limit serving, but will be used for tracking spend in the DV360 UI. The amount is in micros. Must be greater than or equal to 0. For example, 500000000 represents 500 standard units of the currency. |
| `plannedDates` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/DateRange`)`` Required. The dates that the campaign is expected to run. They are resolved relative to the parent advertiser's time zone. - The dates specified here will not affect serving. They are used to generate alerts and warnings. For example, if the flight date of any child insertion order is outside the range of these dates, the user interface will show a warning. - `startDate` is required and must be the current date or later. - `endDate` is optional. If specified, it must be the `startDate` or later. - Any specified date must be before the year 2037. |

## CampaignBudget

Settings that control how the campaign budget is allocated.

| JSON representation |
|---|
| ``` { "budgetId": string, "displayName": string, "budgetUnit": enum (`https://developers.google.com/display-video/api/reference/rest/v5/BudgetUnit`), "budgetAmountMicros": string, "dateRange": { object (`https://developers.google.com/display-video/api/reference/rest/v5/DateRange`) }, "externalBudgetSource": enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#ExternalBudgetSource`), "externalBudgetId": string, "invoiceGroupingId": string, "prismaConfig": { object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaConfig`) } } ``` |

| Fields ||
|---|---|
| `budgetId` | `string (https://developers.google.com/discovery/v1/type-format format)` The unique ID of the campaign budget. Assigned by the system. Do not set for new budgets. Must be included when updating or adding budgets to `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#Campaign.FIELDS.campaign_budgets`. Otherwise, a new ID will be generated and assigned. |
| `displayName` | `string` Required. The display name of the budget. Must be UTF-8 encoded with a maximum size of 240 bytes. |
| `budgetUnit` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v5/BudgetUnit`)`` Required. Immutable. Specifies whether the budget is measured in currency or impressions. |
| `budgetAmountMicros` | `string (https://developers.google.com/discovery/v1/type-format format)` Required. The total amount the linked insertion order segments can budget. The amount is in micros. Must be greater than 0. For example, 500000000 represents 500 standard units of the currency. |
| `dateRange` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/DateRange`)`` Required. The date range for the campaign budget. Linked budget segments may have a different date range. They are resolved relative to the parent advertiser's time zone. Both `startDate` and `endDate` must be before the year 2037. |
| `externalBudgetSource` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#ExternalBudgetSource`)`` Required. The external source of the budget. |
| `externalBudgetId` | `string` Immutable. The ID identifying this budget to the external source. If this field is set and the invoice detail level of the corresponding billing profile is set to "Budget level PO", all impressions served against this budget will include this ID on the invoice. Must be unique under the campaign. |
| `invoiceGroupingId` | `string` Immutable. The ID used to group budgets to be included the same invoice. If this field is set and the invoice level of the corresponding billing profile is set to "Budget invoice grouping ID", all `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignBudget.FIELDS.external_budget_id` sharing the same `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#CampaignBudget.FIELDS.invoice_grouping_id` will be grouped in the same invoice. |
| `prismaConfig` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaConfig`)`` Additional metadata for use by the Mediaocean Prisma tool. Required for Mediaocean budgets. Only applicable to `https://developers.google.com/display-video/api/reference/rest/v5/advertisers#Advertiser.FIELDS.prisma_enabled` advertisers. |

## ExternalBudgetSource

External source for a campaign budget segment.

| Enums ||
|---|---|
| `EXTERNAL_BUDGET_SOURCE_UNSPECIFIED` | External budget source value is not specified or unknown in this version. |
| `EXTERNAL_BUDGET_SOURCE_NONE` | Budget has no external source. |
| `EXTERNAL_BUDGET_SOURCE_MEDIA_OCEAN` | Budget source is Mediaocean. |

## PrismaConfig

Settings specific to the Mediaocean Prisma tool.

| JSON representation |
|---|
| ``` { "prismaType": enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaType`), "prismaCpeCode": { object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaCpeCode`) }, "supplier": string } ``` |

| Fields ||
|---|---|
| `prismaType` | ``enum (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaType`)`` Required. The Prisma type. |
| `prismaCpeCode` | ``object (`https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns#PrismaCpeCode`)`` Required. Relevant client, product, and estimate codes from the Mediaocean Prisma tool. |
| `supplier` | `string` Required. The entity allocated this budget (DSP, site, etc.). |

## PrismaType

Possible types for a Prisma budget.

| Enums ||
|---|---|
| `PRISMA_TYPE_UNSPECIFIED` | Type is not specified or unknown in this version. |
| `PRISMA_TYPE_DISPLAY` | Display type. |
| `PRISMA_TYPE_SEARCH` | Search type. |
| `PRISMA_TYPE_VIDEO` | Video type. |
| `PRISMA_TYPE_AUDIO` | Audio type. |
| `PRISMA_TYPE_SOCIAL` | Social type. |
| `PRISMA_TYPE_FEE` | Fee type. |

## PrismaCpeCode

Google Payments Center supports searching and filtering on the component fields of this code.

| JSON representation |
|---|
| ``` { "prismaClientCode": string, "prismaProductCode": string, "prismaEstimateCode": string } ``` |

| Fields ||
|---|---|
| `prismaClientCode` | `string` The Prisma client code. |
| `prismaProductCode` | `string` The Prisma product code. |
| `prismaEstimateCode` | `string` The Prisma estimate code. |

| ## Methods ||
|---|---|
| ### `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns/create` | Creates a new campaign. |
| ### `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns/delete` | Permanently deletes a campaign. |
| ### `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns/get` | Gets a campaign. |
| ### `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns/list` | Lists campaigns in an advertiser. |
| ### `https://developers.google.com/display-video/api/reference/rest/v5/advertisers.campaigns/patch` | Updates an existing campaign. |