首页 文章

在FB marketing api中,有一个export_format选项:'csv',如何下载csv文件?

提问于
浏览
3

我想从我的api调用中下载一个CSV到FB广告,我已根据下面的代码在参数中设置它,调用工作正常,但我只得到一个分页的JSON作为响应 . 我不太确定如何访问CSV报告,响应会给我任何报告ID或下载链接 . 如何下载此CSV?

使用nodejs facebook-nodejs-ads-sdk image showing the parameter information 'export_format'文档:https://developers.facebook.com/docs/marketing-api/reference/adgroup/insights/


var getReport = function(){
  console.log("API for FB report has been called")
  let ads_insights;
  let ads_insights_id;

  const logApiCallResult = (apiCallName, data) => {
    console.log(apiCallName);
    if (showDebugingInfo) {
      console.log('Data:' + JSON.stringify(data));
    }
  };

  const fields = [
    'ad_name',
    'impressions',
    'reach',
    'spend'
  ];

  const params = {
    'export_format': 'csv',
    'export_name': new Date() + 'fb-download',
    'level' : 'ad',
    'filtering' : [],
    'breakdowns' : [],
    'time_range' : {'since':'2018-01-22','until':'2018-01-23'}
  };

  new AdAccount(ad_account_id).getInsights(
    fields,
    params).then((result) => {
    logApiCallResult('ads_insights api call complete.', result);
    console.log("##########" + result + "#####")
    ads_insights_id = result[0].id;
  }).catch((error) => {
    console.log(error);
  });
}

1 回答

  • 1

    导出实际报告文件似乎不是官方Facebook Graph API的一部分 .

    我的解决方案是向以下 endpoints 发出GET请求:

    https://www.facebook.com/ads/ads_insights/export_report/?report_run_id=<REPORT_RUN_ID>&name=<REPORT_FILE_NAME>&format=csv&access_token=<FACEBOOK_API_KEY>
    

    请注意,此 endpoints 将输出一个文件,其中的列会不经警告地不断更改,因此不适合自动数据收集 . 导出标准化报告的唯一方法是采用JSON格式 .

    此 endpoints 的文档很难找到:located here.

相关问题