使用PHP google/apiclient:2.0调用Google Ads API时,如何获取YOUTUBE_VIDEO类型资产的正确名称?
解决YOUTUBE_VIDEO类型资产名称为空的问题
这个问题我之前也碰到过,核心原因是Google Ads API里ad_group_ad_asset_view中的asset.name字段并非对所有资产类型都返回有效值——对于YOUTUBE_VIDEO类型的资产,系统不会把视频名称填充到这个通用字段里,而是存在嵌套的asset.youtube_video_asset.name字段中。
修改你的GAQL查询语句
只需要在SELECT子句中添加视频资产专属的名称字段即可,修改后的查询语句如下:
SELECT asset.final_urls, asset.name, asset.type, asset.id, asset.youtube_video_asset.name FROM ad_group_ad_asset_view WHERE segments.date = '$date'
使用逻辑说明
- 当
asset.type为YOUTUBE_VIDEO时,直接读取asset.youtube_video_asset.name的值,这就是你在Google Ads后台看到的视频资产名称; - 对于其他类型的资产(比如图片、文字资产),可以继续使用
asset.name字段获取名称。
你可以在Google Ads API的Query Builder里测试这个语句,确认返回结果里的视频资产名称已经正常显示了。
内容的提问来源于stack exchange,提问作者Rinze
相关产品推荐
相关产品推荐

