API маркетинга в Facebook - Объект с идентификатором не существует

Я начал с Facebook Marketing API сегодня. Я просто пытаюсь прочитать кампании из своей учетной записи Facebook Business. У меня есть рекламный аккаунт и созданная там кампания. Я полагаю, моя проблема с генерацией токена.

Я просто генерирую токен отсюда: https://developers.facebook.com/tools/explorer?classic=0

И ошибка, которую я получаю:

{ error:
      { message: 'Unsupported get request. Object with ID \'10xxxxxxxx\' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api',
        type: 'GraphMethodException',
        code: 100,
        error_subcode: 33,
        fbtrace_id: 'E5CAU6UvHwF' } }

Мой код Node.js:

const readCampaign = async (program) => {    
    const accessToken = TOKEN
    const api = adsSdk.FacebookAdsApi.init(accessToken)

    const account = new AdAccount('act_' + program.accountid)
    console.log('act_' + account.id) // fields can be accessed as properties
    let result
        account.read([AdAccount.Fields.name])
            .then((account) => {
                return account.getCampaigns([Campaign.Fields.name], { limit: 10 }) // fields array and params
            })
            .then((result) => {
                campaigns = result
                campaigns.forEach((campaign) => console.log(campaign.name))
            }).catch(console.error);

    console.log(result)
}

Чтобы сгенерировать токен, я выбираю созданное мной приложение "Получить токен доступа пользователя", а затем выбираю все возможные разрешения для этого - просто чтобы проверить это.

Что я делаю неправильно? Спасибо

0 ответов

Я подозреваю, что это связано с ошибкой разрешения.

Сначала я проверю, есть ли у вашего приложения доступ к той учетной записи, к которой вы пытаетесь получить доступ.

Затем я бы предложил создать системного пользователя через своего бизнес-менеджера (его можно найти в бизнес-настройках), назначить ему доступ к рекламным аккаунтам и использовать маркер системного пользователя при инициализации библиотеки.

Одним из больших преимуществ является то, что токен пользователей системы не имеет такого короткого срока действия.

Документ пользователя системы Facebook

Другие вопросы по тегам