facebook-ruby-business-sdk
facebook-ruby-business-sdk copied to clipboard
fix: AdReportRun can't retain id with post insights
I'd like to use AdReportRun
like below.
ad_account = FacebookAds::AdAccount.get(some_params)
# Generating a job to create report
ad_report_run = ad_account.insights.create(some_params)
# Waiting until the job completed
until ad_report_run.reload! && ad_report_run.async_status == "Job Completed"
sleep 1
end
# Fetching the report
ad_report_run.insights.all
Unfortunately AdReportRun
causes an error with api request in reality, because AdReportRun
has report_run_id
instead of id
. As you know AdObject
(and its sub class) try to get data by id
.
ad_account = FacebookAds::AdAccount.get(some_params)
ad_report_run = ad_account.insights.create(some_params)
ad_report_run.async_status # error occurred
# => NoMethodError: undefined method `gsub' for nil:NilClass
# from /usr/src/tmp/facebook-ruby-business-sdk/lib/facebook_ads/session.rb:41:in `request'
That's why I added a process to replace attributes report_run_id
to id
on AdObject#initialize
.