如何通过Google AdWords API调整广告组的移动设备出价规则?
调整广告组移动设备出价规则的AdWords API实现方案
没问题,我来帮你完善代码,实现通过Google AdWords API提高或降低广告组移动设备的出价调整系数。你的代码已经有了基础框架,只需要补充出价调整的核心逻辑和完整操作流程:
完整代码示例
use Google\AdsApi\AdWords\AdWordsServices; use Google\AdsApi\AdWords\v201809\cm\AdGroupCriterionService; use Google\AdsApi\AdWords\v201809\cm\BiddableAdGroupCriterion; use Google\AdsApi\AdWords\v201809\cm\Platform; use Google\AdsApi\AdWords\v201809\cm\AdGroupCriterionOperation; use Google\AdsApi\AdWords\v201809\cm\Operator; // 假设你已经完成AdWords会话的初始化($session配置正确) $adWordsServices = new AdWordsServices(); $adGroupCriterionService = $adWordsServices->get($session, AdGroupCriterionService::class); // 1. 指定目标设备:移动设备的固定ID是30000 $mobileDevice = new Platform(); $mobileDevice->setId(30000); // 移动设备ID,桌面是10001,平板是20000 // 2. 关联到目标广告组 $biddableAdGroupCriterion = new BiddableAdGroupCriterion(); $biddableAdGroupCriterion->setAdGroupId(52012184360); // 替换为你的广告组ID $biddableAdGroupCriterion->setCriterion($mobileDevice); // 3. 设置出价调整系数:大于1提高出价,小于1降低出价 $bidModifier = 1.5; // 示例:提高50%出价;如果要降低,比如设为0.8就是降低20% $biddableAdGroupCriterion->setBidModifier($bidModifier); // 4. 创建更新操作 $operation = new AdGroupCriterionOperation(); $operation->setOperand($biddableAdGroupCriterion); $operation->setOperator(Operator::SET); // SET操作会更新现有准则,首次设置也适用 $operations = [$operation]; // 5. 提交API请求并处理结果 try { $result = $adGroupCriterionService->mutate($operations); foreach ($result->getValue() as $updatedCriterion) { printf( "广告组ID %d 的移动设备出价调整系数已更新为 %.2f\n", $updatedCriterion->getAdGroupId(), $updatedCriterion->getBidModifier() ); } } catch (Exception $e) { printf("API调用出错:%s\n", $e->getMessage()); }
关键细节说明
- 设备ID对应关系:AdWords API里设备类型用固定ID匹配,比名称更可靠:
- 移动设备:
30000 - 桌面设备:
10001 - 平板设备:
20000
- 移动设备:
- 出价调整系数:
bidModifier的取值范围一般是0.1到10.0(具体以账户权限为准):1.0:不调整出价- 大于1:按比例提高出价(比如
1.5=提高50%) - 小于1:按比例降低出价(比如
0.7=降低30%)
- 操作类型选择:用
Operator::SET就足够,不管广告组之前有没有设置过设备出价,都会直接更新到指定值;如果是全新添加,Operator::ADD也可用,但SET更通用。
注意事项
- 确保
$session已正确配置OAuth2授权、客户端ID等信息,否则会触发权限错误。 - 广告组ID一定要核对准确,避免误操作其他广告组。
- 批量调整多个广告组时,可以循环生成多个
operation对象,一次性提交mutate请求,提升效率。
内容的提问来源于stack exchange,提问作者KD.S.T.
相关产品推荐
相关产品推荐

