class Weese::Bus::MetroBus
MetroBus
client. Used for accessing MetroBus-related WMATA APIs.
Attributes
@return [String] WMATA API key
Public Class Methods
MetroBus
client. Used for accessing MetroBus
related endpoints
@param [String] api_key
WMATA API key, get one at {developer.wmata.com}
# File lib/weese/bus/metro_bus.rb, line 23 def initialize(api_key) @api_key = api_key end
Public Instance Methods
List of all bus route variants. {developer.wmata.com/docs/services/54763629281d83086473f231/operations/5476362a281d830c946a3d6a WMATA Documentation}
@raise [WeeseError] If request or JSON parse fails
@return [Hash] JSON Response
# File lib/weese/bus/metro_bus.rb, line 35 def routes fetch( Requests::Request.new( @api_key, Bus::Urls::ROUTES, {} ) ) end
Nearby bus stops based on latitude, longitude, and radius. {developer.wmata.com/docs/services/54763629281d83086473f231/operations/5476362a281d830c946a3d6d WMATA Documentation}
@param [RadiusAtCoordinates] radius_at_coordinates A radius in meters around a lat/long
@raise [WeeseError] If request or JSON parse fails
@return [Hash] JSON Response
# File lib/weese/bus/metro_bus.rb, line 55 def stops(radius_at_coordinates = nil) query = radius_at_coordinates ? radius_at_coordinates.to_h : {} fetch( Requests::Request.new( @api_key, Bus::Urls::STOPS, query ) ) end