class Bing::Ads::API::V11::Services::Reporting
Public Class Methods
new(options = {})
click to toggle source
Calls superclass method
Bing::Ads::API::V11::Services::Base::new
# File lib/bing/ads/api/v11/services/reporting.rb, line 8 def initialize(options = {}) super(options) end
Public Instance Methods
poll_generate_report(report_request_id)
click to toggle source
# File lib/bing/ads/api/v11/services/reporting.rb, line 19 def poll_generate_report(report_request_id) response = call(:poll_generate_report, report_request_id: report_request_id) response_body = response_body(response, __method__) response_body end
report_body(report_request_id)
click to toggle source
# File lib/bing/ads/api/v11/services/reporting.rb, line 37 def report_body(report_request_id) HttpClient.download(report_url(report_request_id)) end
report_ready?(report_request_id)
click to toggle source
# File lib/bing/ads/api/v11/services/reporting.rb, line 25 def report_ready?(report_request_id) polled = poll_generate_report(report_request_id) status = polled.dig(:report_request_status, :status) raise "Report status: Error for ID: #{report_request_id}" if status == "Error" status == "Success" end
report_url(report_request_id)
click to toggle source
# File lib/bing/ads/api/v11/services/reporting.rb, line 32 def report_url(report_request_id) polled = poll_generate_report(report_request_id) polled.dig(:report_request_status, :report_download_url) end
submit_generate_report(type, report_options)
click to toggle source
# File lib/bing/ads/api/v11/services/reporting.rb, line 12 def submit_generate_report(type, report_options) payload = Bing::Ads::API::V11::Data::ReportRequest.prepare(type, report_options) response = call(:submit_generate_report, payload) response_body = response_body(response, __method__) response_body end
Private Instance Methods
service_name()
click to toggle source
# File lib/bing/ads/api/v11/services/reporting.rb, line 43 def service_name 'reporting' end