Class: Yelp::Fusion::Endpoint::Transaction

Inherits:
Object
  • Object
show all
Defined in:
lib/yelp/fusion/endpoint/transaction.rb

Overview

Endpoint to search for Yelp transactions

Constant Summary collapse

PATH =
'/v3/transactions/'.freeze

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Transaction

Returns a new instance of Transaction.



35
36
37
# File 'lib/yelp/fusion/endpoint/transaction.rb', line 35

def initialize(client)
  @client = client
end

Instance Method Details

#transaction_by_coordinates(transaction_type, coordinates) ⇒ Response::Search

Search by coordinates: give it a latitude and longitude along with option accuracy, altitude, and altitude_accuracy to search an area. More info at www.yelp.com/developers/documentation/v3/transaction_search

Examples:

Search for business with params

coordinates = { latitude: 37.786732,
                longitude: -122.399978 }

response = client.search('delivery', coordinates)
response.businesses # [<Business 1>, <Business 2>, <Business 3>]
response.businesses[0].name # 'Yelp'

Parameters:

Returns:

Raises:



71
72
73
74
75
76
77
# File 'lib/yelp/fusion/endpoint/transaction.rb', line 71

def transaction_by_coordinates(transaction_type, coordinates)
  raise Error::MissingLatLng if coordinates[:latitude].nil? ||
                                coordinates[:longitude].nil?

  result = transaction_request(transaction_type, coordinates)
  Responses::Transaction.new(JSON.parse(result.body))
end

#transaction_search(transaction_type, location) ⇒ Object

Make a request to the transaction search endpoint of the API

Examples:

Get Transaction

review = client.transaction('delivery', 'San Francisco')
review.name # => 'Yelp'
review.url  # => 'http://www.yelp.com/biz/yelp-san-francisco'

Parameters:

  • transaction_type (String)

    it has to be delivery

  • location (Hash)

    a hash of supported locatio



47
48
49
50
# File 'lib/yelp/fusion/endpoint/transaction.rb', line 47

def transaction_search(transaction_type, location)
  result = transaction_request(transaction_type, location)
  Responses::Transaction.new(JSON.parse(result.body))
end