Google Ads Demand Gen Campaign Support
Please add full Google Ads Demand Gen campaign support.
We would like to create, read and manage:
Demand Gen campaigns
ad groups
audience targeting
channel controls
creative assets
Demand Gen ads
campaign status
budgets
bidding settings
Please expose stable native Google resource IDs for all created resources so campaigns can be independently verified and reconciled after mutations.
Demand Gen is becoming increasingly important for agency clients using YouTube, Discover, Gmail and other Google inventory.
Log in to comment and vote
Comments2
Miquel Palet López
Sep 27
Update: Demand Gen is now fully manageable through the API. You can create image, video and carousel ads (demandGen.carouselCards, 2 to 10 cards), add new ad groups or ads to an existing Demand Gen campaign (existingCampaignId or adSetId), and edit creative, channels, audiences and ad group locations or languages with PUT /v1/ads/{adId}. Campaign targeting edits send locations and languages to the right ad group, and every create path supports validateOnly. Not supported yet: product ads, lookalike segments, and editing carousel cards after creation (create a new carousel ad instead).
Miquel Palet López
Sep 27
Shipped the first part. POST /v1/ads/create with campaignType demand_gen (plus a demandGen block) creates a Demand Gen campaign, ad group and ad in one call: multi-image or video ads, channel controls (YouTube in-stream, in-feed, Shorts, Discover, Gmail, Display), audiences (user lists, interests, custom audiences, age, gender, or an existing audienceId), and maximize conversions, target CPA, target ROAS or target CPC. It's created paused, supports validateOnly, and returns Google's native campaign, ad group and ad IDs. Status, budget, bidding and name are managed through the existing campaign endpoints. Carousel ads and editing creative, targeting and audiences after creation are being built now; I'll update here.