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

Facebook Graph API获取广告报错:ad_reached_countries参数缺失

解决Facebook Graph API v19.0 PHP SDK获取广告存档时的参数传递问题

当使用PHP SDK调用Facebook Graph API的ads_archive端点时,参数必须通过SDK的get()方法的第二个参数以关联数组形式传递,手动拼接URL或修改路径的方式会导致参数无法被正确识别,这就是你收到The parameter ad_reached_countries is required错误的核心原因。

正确的代码实现步骤

  1. 确保使用兼容的SDK版本
    先通过Composer安装或更新到最新的Facebook PHP SDK,确保支持v19.0:

    composer require facebook/graph-sdk
    
  2. 初始化Facebook实例并传递正确参数
    以下是完整的可运行代码示例,注意ad_reached_countries必须以数组形式传入,这是API的强制要求:

    require_once __DIR__ . '/vendor/autoload.php';
    
    use Facebook\Facebook;
    
    // 初始化SDK
    $fb = new Facebook([
      'app_id' => '你的应用ID',
      'app_secret' => '你的应用密钥',
      'default_graph_version' => 'v19.0',
    ]);
    
    // 构建请求参数数组
    $requestParams = [
      // 必填:目标国家/地区,数组格式
      'ad_reached_countries' => ['US', 'GB'],
      // 可选:搜索关键词,多个用逗号分隔或数组形式
      'search_terms' => 'sustainable energy',
      // 可选:指定需要返回的字段,按需调整
      'fields' => 'id,ad_creative_body,ad_delivery_start_time,ad_delivery_stop_time',
      // 可选:限制返回结果数量
      'limit' => 20
    ];
    
    try {
      // 调用ads_archive端点,参数作为第二个参数传入
      $response = $fb->get('/ads_archive', $requestParams);
      $adsArchive = $response->getGraphEdge();
    
      // 遍历处理返回的广告数据
      foreach ($adsArchive as $ad) {
        echo "广告ID: {$ad['id']}\n";
        echo "广告内容: {$ad['ad_creative_body']}\n";
        echo "投放开始时间: {$ad['ad_delivery_start_time']}\n\n";
      }
    } catch(Facebook\Exceptions\FacebookResponseException $e) {
      echo 'Graph API错误: ' . $e->getMessage();
    } catch(Facebook\Exceptions\FacebookSDKException $e) {
      echo 'SDK错误: ' . $e->getMessage();
    }
    

关键注意事项

  • 参数格式要求:ad_reached_countries必须是数组类型,不能直接传逗号分隔的字符串(如'US,GB'),否则API会识别失败。
  • SDK参数传递逻辑:SDK会自动将关联数组转换为URL查询参数,无需手动拼接或修改请求路径,手动操作会破坏SDK的参数处理流程。
  • 权限验证:确保你的Facebook应用已经获得了ads_archive的访问权限,否则即使参数正确,也会返回权限相关错误。
  • 字段指定:务必通过fields参数明确指定需要返回的字段,默认返回的字段非常有限,无法满足多数业务需求。

内容的提问来源于stack exchange,提问作者Tsukimoto Mitsumasa

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 23:00:10