module SeatGeek
Constants
- CONCERT_ID
- PUBLIC_API_URL
- SPORTS_ID
- THEATRE_ID
- VERSION
Attributes
base_url[RW]
options[RW]
Public Class Methods
get_event(id:)
click to toggle source
# File lib/seat_geek.rb, line 38 def self.get_event(id:) url = "#{PUBLIC_API_URL}events/#{id}" request = Typhoeus::Request.new(url, method: :get, ).run parse_response(request.body) end
get_events(options)
click to toggle source
# File lib/seat_geek.rb, line 30 def self.get_events(options) partner_id = options.fetch(:seat_geek_partner_id) { 11781 } @options = options.merge(rid: partner_id) @base_url = PUBLIC_API_URL + 'events' parse_response(typhoeus_request.body) end
get_recommendations()
click to toggle source
GET api.seatgeek.com/2/recommendations
# File lib/seat_geek.rb, line 78 def self.get_recommendations()#client_key:) @base_url = PUBLIC_API_URL + '/recommendations?client_id=MzkzMjEyMnwxNDQ5MjgzMTQ1' parse_response(typhoeus_request.body) end
get_taxonomies()
click to toggle source
# File lib/seat_geek.rb, line 46 def self.get_taxonomies @options = {} @base_url = 'https://api.seatgeek.com/2/taxonomies' taxonomies = parse_response(typhoeus_request.body)['taxonomies'] SeatGeek::Taxonomies::Tree.new(parent_ids: [SPORTS_ID, CONCERT_ID, THEATRE_ID], taxonomies: taxonomies) end
states()
click to toggle source
# File lib/seat_geek.rb, line 54 def self.states @state ||= [{:state_name=>"AL"}, {:state_name=>"MT"}, {:state_name=>"AK"}, {:state_name=>"NE"}, {:state_name=>"AZ"}, {:state_name=>"NV"}, {:state_name=>"AR"}, {:state_name=>"NH"}, {:state_name=>"CA"}, {:state_name=>"NJ"}, {:state_name=>"CO"}, {:state_name=>"NM"}, {:state_name=>"CT"}, {:state_name=>"NY"}, {:state_name=>"DE"}, {:state_name=>"NC"}, {:state_name=>"FL"}, {:state_name=>"ND"}, {:state_name=>"GA"}, {:state_name=>"OH"}, {:state_name=>"HI"}, {:state_name=>"OK"}, {:state_name=>"ID"}, {:state_name=>"OR"}, {:state_name=>"IL"}, {:state_name=>"PA"}, {:state_name=>"IN"}, {:state_name=>"RI"}, {:state_name=>"IA"}, {:state_name=>"SC"}, {:state_name=>"KS"}, {:state_name=>"SD"}, {:state_name=>"KY"}, {:state_name=>"TN"}, {:state_name=>"LA"}, {:state_name=>"TX"}, {:state_name=>"ME"}, {:state_name=>"UT"}, {:state_name=>"MD"}, {:state_name=>"VT"}, {:state_name=>"MA"}, {:state_name=>"VA"}, {:state_name=>"MI"}, {:state_name=>"WA"}, {:state_name=>"MN"}, {:state_name=>"WV"}, {:state_name=>"MS"}, {:state_name=>"WI"}, {:state_name=>"MO"}, {:state_name=>"WY"}].sort_by { |x| x[:state_name] } end
Private Instance Methods
build_url()
click to toggle source
Instead of BuildQuery
what if it’s the Method name? E.G Recommendations.build(options) E.G Events.build(options) This way each build could have their own custom settings
# File lib/seat_geek.rb, line 91 def build_url BuildQuery.build(options, base_url) end
parse_response(json_string)
click to toggle source
# File lib/seat_geek.rb, line 101 def parse_response(json_string) Oj.load(json_string) end
typhoeus_request()
click to toggle source
# File lib/seat_geek.rb, line 95 def typhoeus_request Typhoeus::Request.new(build_url, method: :get ).run end