Class: Blurb::ReportRequests
- Inherits:
-
RequestCollectionWithCampaignType
- Object
- BaseClass
- RequestCollection
- RequestCollectionWithCampaignType
- Blurb::ReportRequests
- Defined in:
- lib/blurb/report_requests.rb
Constant Summary collapse
- SD_TACTIC =
'T00020'.freeze
Constants inherited from BaseClass
BaseClass::CAMPAIGN_TYPE_CODES
Instance Method Summary collapse
- #create(record_type:, report_date: Date.today, metrics: nil, segment: nil) ⇒ Object
- #download(report_id) ⇒ Object
-
#initialize(campaign_type:, base_url:, headers:) ⇒ ReportRequests
constructor
A new instance of ReportRequests.
- #retrieve(report_id) ⇒ Object
Methods inherited from RequestCollection
#create_bulk, #delete, #list, #list_extended, #retrieve_extended, #update, #update_bulk
Constructor Details
#initialize(campaign_type:, base_url:, headers:) ⇒ ReportRequests
Returns a new instance of ReportRequests.
7 8 9 10 11 |
# File 'lib/blurb/report_requests.rb', line 7 def initialize(campaign_type:, base_url:, headers:) @campaign_type = campaign_type @base_url = "#{base_url}/v2/#{@campaign_type}" @headers = headers end |
Instance Method Details
#create(record_type:, report_date: Date.today, metrics: nil, segment: nil) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/blurb/report_requests.rb', line 13 def create( record_type:, report_date: Date.today, metrics: nil, segment: nil ) # create payload metrics = get_default_metrics(record_type.to_s.underscore.to_sym, segment) if metrics.nil? payload = { metrics: metrics.map{ |m| m.to_s.camelize(:lower) }.join(","), report_date: report_date } payload[:segment] = segment if segment payload[:tactic] = SD_TACTIC if @campaign_type.to_sym == :sd execute_request( api_path: "/#{record_type.to_s.camelize(:lower)}/report", request_type: :post, payload: payload ) end |
#download(report_id) ⇒ Object
42 43 44 45 46 47 |
# File 'lib/blurb/report_requests.rb', line 42 def download(report_id) execute_request( api_path: "/reports/#{report_id}/download", request_type: :get, ) end |
#retrieve(report_id) ⇒ Object
35 36 37 38 39 40 |
# File 'lib/blurb/report_requests.rb', line 35 def retrieve(report_id) execute_request( api_path: "/reports/#{report_id}", request_type: :get, ) end |