You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Symfony6+PHP8环境下Google Ads API V22.0.0 PHP示例运行报404

解决Google Ads API V22.0.0调用searchStream接口返回404的问题

问题根源

你代码里用的是V14版本的Google Ads客户端库,但安装的API依赖是V22.0.0,版本不匹配导致请求的API路径还是/v14/...,而V22对应的API版本路径是/v15/...,服务器找不到旧路径就返回404。

解决步骤

  1. 替换客户端库命名空间
    把代码中所有V14的命名空间替换成V15,因为Google Ads API V22对应客户端库的V15版本。

  2. 确认依赖版本
    检查composer.json里googleads/google-ads-php的版本是否为22.0.0,如果不是,执行以下命令更新:

    composer require googleads/google-ads-php:22.0.0
    
  3. 修正后的完整代码

use Google\Ads\GoogleAds\Lib\V15\GoogleAdsClientBuilder;
use Google\Ads\GoogleAds\Lib\OAuth2TokenBuilder;
use Google\Ads\GoogleAds\V15\Services\GoogleAdsServiceClient;
use Google\Ads\GoogleAds\V15\Services\SearchGoogleAdsStreamRequest;

$developerToken = 'xxxx';  
$clientId = 'yyyy';
$clientSecret = 'zzzz';
$refreshToken = 'dddd'; 
$loginCustomerId = 'vvvv';  

try {
    $oAuth2Credential = (new OAuth2TokenBuilder())
        ->withClientId($clientId)
        ->withClientSecret($clientSecret)
        ->withRefreshToken($refreshToken)
        ->build();

    $googleAdsClient = (new GoogleAdsClientBuilder())
        ->withDeveloperToken($developerToken)
        ->withOAuth2Credential($oAuth2Credential)
        ->withLoginCustomerId($loginCustomerId)
        ->build();

    $googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
    
    $query = 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id';
    
    $stream2 = $googleAdsServiceClient->searchStream($loginCustomerId, $query);          
    foreach ($stream2->iterateAllElements() as $googleAdsRow) {
        // 处理返回数据,示例打印结果
        printf("Campaign ID: %d, Name: %s\n", $googleAdsRow->getCampaign()->getId(), $googleAdsRow->getCampaign()->getName());
    }
} catch (\Google\ApiCore\ApiException $e) {
    $this->_logCall(self::LOG_GOOGLE_ADS, 'ERREUR:',$e->getBasicMessage());
}       

补充说明

Google Ads API的客户端库版本和官方API版本是严格对应的:

  • API V22 → 客户端库v15
  • API V21 → 客户端库v14
    必须保证代码中使用的命名空间版本与安装的依赖版本完全匹配,否则会出现路径不匹配的错误。

内容的提问来源于stack exchange,提问作者And Row ID

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 09:36:20