Class: EventbriteSDK::Report
- Inherits:
-
Object
- Object
- EventbriteSDK::Report
- Defined in:
- lib/eventbrite_sdk/report.rb
Constant Summary collapse
- STRING_KEYS =
%i[ start_date end_date date_facet event_status timezone group_by ].freeze
- VALID_REPORTS =
%i[attendees sales].freeze
Instance Method Summary collapse
- #event_ids(*ids) ⇒ Object
- #filter_by(filters) ⇒ Object
-
#initialize ⇒ Report
constructor
A new instance of Report.
- #query ⇒ Object
- #retrieve(type = nil, sdk = EventbriteSDK) ⇒ Object
Constructor Details
#initialize ⇒ Report
Returns a new instance of Report.
13 14 15 |
# File 'lib/eventbrite_sdk/report.rb', line 13 def initialize @query = {} end |
Instance Method Details
#event_ids(*ids) ⇒ Object
17 18 19 20 21 |
# File 'lib/eventbrite_sdk/report.rb', line 17 def event_ids(*ids) @query[:event_ids] = ids.join(',') self end |
#filter_by(filters) ⇒ Object
23 24 25 26 27 |
# File 'lib/eventbrite_sdk/report.rb', line 23 def filter_by(filters) @query[:filter_by] = filters.to_json self end |
#query ⇒ Object
36 37 38 |
# File 'lib/eventbrite_sdk/report.rb', line 36 def query @query.dup # Don't allow mutation end |
#retrieve(type = nil, sdk = EventbriteSDK) ⇒ Object
40 41 42 43 44 45 46 |
# File 'lib/eventbrite_sdk/report.rb', line 40 def retrieve(type = nil, sdk = EventbriteSDK) unless VALID_REPORTS.include?(type) raise ArgumentError, "`:type` is not of #{VALID_REPORTS}" end sdk.get(url: "reports/#{type}", query: query) end |