Page Summary
-
The Google Ads API only supports fetching and reporting on existing Video campaigns and their criteria.
-
You cannot create new Video campaigns or update existing ones using the Google Ads API.
-
Google Ads scripts and Demand Gen campaigns are alternatives for programmatic Video campaign management.
-
You can retrieve performance data for Video campaigns using
GoogleAdsService.SearchStreamand filtering bycampaign.advertising_channel_type = 'VIDEO'.
Video campaigns let you show video ads on YouTube and across websites and apps running on Google video partners.
API limitations
The Google Ads API primarily supports fetching and reporting on existing Video campaigns, ad groups, ads, and criteria. Video campaigns cannot be created or mutated using the Google Ads API, with the following version-specific exceptions and behaviors:
VideoResponsiveAdInfomutability: Starting inv24,VideoResponsiveAdInfoobjects are mutable (in earlier versions, they are immutable). When creating or mutatingVideoResponsiveAdInfo, thevideos,business_name, andlogo_imagesfields are required.- Brand safety suitability: Starting in
v24, campaign-levelcampaign.video_brand_safety_suitabilityis removed. Query brand safety suitability at the account level usingcustomer.video_brand_safety_suitability. - Video campaign experiments: Starting in
v24,experiment.video_experimentis available for configuringYOUTUBE_CUSTOMexperiments consisting of Video campaigns.
Alternatives for campaign management
If you need to create or manage Video campaigns programmatically, consider the following options:
- Google Ads scripts: You can manage Video campaigns using Google Ads scripts. This allows for automated management within the Google Ads interface.
- Demand Gen campaigns: If your goal is to serve video ads across Google properties including YouTube, Demand Gen campaigns are fully supported in the Google Ads API for both creation and management.
Get performance data
You can retrieve performance data for your Video campaigns, ad groups, and
criteria using GoogleAdsService.SearchStream by filtering for
campaign.advertising_channel_type = 'VIDEO'.
Ad group performance
The following query retrieves Video campaign and ad group metrics, including
TrueView video views and quartile completion rates, from the ad_group
resource:
SELECT
campaign.id,
campaign.name,
campaign.advertising_channel_type,
ad_group.id,
ad_group.name,
metrics.impressions,
metrics.clicks,
metrics.ctr,
metrics.video_trueview_views,
metrics.video_quartile_p100_rate
FROM ad_group
WHERE campaign.advertising_channel_type = 'VIDEO'
Video placement and criteria reporting
Because ad_group_criterion does not support metrics or segments directly, use
criteria view resources such as managed_placement_view to retrieve
performance metrics for targeted YouTube videos, YouTube channels, or other
managed placements:
SELECT
campaign.id,
ad_group.id,
ad_group_criterion.criterion_id,
ad_group_criterion.type,
ad_group_criterion.youtube_video.video_id,
ad_group_criterion.youtube_channel.channel_id,
metrics.impressions,
metrics.video_trueview_views
FROM managed_placement_view
WHERE campaign.advertising_channel_type = 'VIDEO'
AND ad_group_criterion.type IN ('YOUTUBE_VIDEO', 'YOUTUBE_CHANNEL')
AND segments.date DURING LAST_30_DAYS