Оказывается, я использовал маркер постоянного доступа к странице, который не входил в область вызова API. Мне нужно было использовать временный код доступа пользователя.
E, [2019-01-19T00: 08: 49.366067 # 19868] ОШИБКА -: GET / me / adaccounts
OAuthException / 100: (# 100) Попытка доступа к несуществующему полю
(adaccounts) для типа узла (Page) RestClient :: BadRequest: 400 Bad
Запрос
В консоли pry для гема я запустил эту команду, чтобы установить переменную учетной записи:
pry(main)> account = FacebookAds::AdAccount.find('act_MY_ACCOUNT_ID')
и я получаю эту ошибку:
E, [2019-01-19T00: 12: 24.760545 # 20188] ОШИБКА -: GET / me / adaccounts
OAuthException / 2635: (# 2635) Вы вызываете устаревшую версию
Рекламный API. Пожалуйста, обновите до последней версии: v3.2.
RestClient :: BadRequest: 400 плохих запросов
Итак, я выполнил эту команду:
pry(main)> FacebookAds.base_uri = 'https://graph.facebook.com/v3.2'
"https://graph.facebook.com/v3.2"
Затем pry(main)> account = FacebookAds::AdAccount.find('act_MY_ACCOUNT_ID')
снова.
Наконец я побежал:
pry(main)> account.ad_insights
но в результате получается пустой массив, когда я знаю, что он не должен быть пустым. Я собираюсь пропустить гем и использовать Ruby net / http для прямого запроса к API.