NodeJS twitter-ads lib 找不到我的帐户(未找到帐户 <myaccountnumber>)

NodeJS twitter-ads lib cannot find my account (Account <myaccountnumber> was not found)

所以当我使用 twurl 时...

twurl -H "https://ads-api.twitter.com" "/2/accounts/<myaccountnumber>"

我得到了正确的回复,其中包含有关所述广告帐户的所有信息。我想,这意味着我很高兴在 Twitter 方面继续 authorization/whitelisting。是的?我的广告帐户和我的应用是否正确绑定在一起?

当我运行https://github.com/FallenTech/twitter-ads

上的代码示例
var TwitterAdsAPI = require('twitter-ads');
var T = new TwitterAdsAPI({
  consumer_key: 'XXX',
  consumer_secret: 'XXX',
  access_token: 'XXX',
  access_token_secret: 'XXX'
});

T.get('accounts/:account_id', {account_id: 'XXX'}, function(error, resp, body) {
  if (error) return console.error(error);
  console.log(body);

});

我明白了

{ code: 'NOT_FOUND',
   message: 'Account <myaccountnumber> was not found' }

我在这里缺少哪一步?当我授权 twurl 时,我只使用了 consumer-key 和 consumer-secret。

我也试过了...

T.get('accounts/:account_id', {account_id: 'XXX', sandbox: false, api_version: '2'}, function(error, resp, body) {
  if (error) return console.error(error);
  console.log(body);
});

提前致谢。

您需要在 TwitterAdsAPI 配置中指定标志 sandbox: falseapi_version: '2',而不是作为您指定的 T.get 函数中第二个参数的对象的一部分在你的代码片段中做了。请参见下面的示例:

var TwitterAdsAPI = require('twitter-ads');
var T = new TwitterAdsAPI({
  consumer_key: 'XXX',
  consumer_secret: 'XXX',
  access_token: 'XXX',
  access_token_secret: 'XXX',
  sandbox: false,
  api_version: '2'
});

T.get('accounts/:account_id', {account_id: 'XXX'}, function(error, resp, body) {
  if (error) return console.error(error);
  console.log(body);

});