You are looking at historical revision 16700 of this page. It may differ significantly from its current revision.

yelp

Introduction

This egg provides an interface to the public Yelp API. Yelp is social database of customer reviews of restaurants and businesses. It also provides generalized lookup by phone number, geocode, or address across the United States, Canada, and Great Britain. All six Yelp APIs are supported along with a simply query mechanism for traversing the structured JSON query result. A valid Yelp YWSID is required to use this API. There is no charge for a YWSID though queries are rate-limited (currently 1000 queries per day) and use is subject to the Yelp's API Terms of Use.

Examples

#;1> (use yelp)
; loading /usr/local/chicken/lib/chicken/4/yelp.import.so ...
; loading /usr/local/chicken/lib/chicken/4/srfi-18.import.so ...
; loading /usr/local/chicken/lib/chicken/4/srfi-69.import.so ...
; loading /usr/local/chicken/lib/chicken/4/tcp.import.so ...
; loading /usr/local/chicken/lib/chicken/4/yelp.so ...
#;2> (by-phone "4154376800")
invalid-ywsid
"Invalid YWSID"
#;3> ,l ../ywsid
; loading ../ywsid.scm ...
#;4> (define y (by-phone "4154376800"))
#;5> (valid? y)
#t
#;6> (display-info y)
Pizzeria Delfina
3611 18th Street
San Francisco, CA 94110
(415)437-6800
Neighborhood: Mission
37.761398 -122.424003
#;7> (decode y)
businesses: (1)
  rating_img_url: http://static1.px.yelp.com/static/200911304084228337/i/ico/stars/stars_4.png
  country: USA
  phone: 4154376800
  ...
message:
  text: OK
  version: 1.1.1
  code: 0
#;8> (find y "businesses.phone")
"4154376800"
#;9> (find y "message.text")
"OK"
#;10> (find y "businesses.neighborhoods.name")
"Mission"

Authors

Derrell Piper

License

BSD

Requirements

None.

The chicken-install test case requires the test egg. Using -test with chicken-install also requires that a valid YWSID exist in ../../ywsid above the egg's temporary install directory. When fetched with chicken-install -r, simply create a file named ywsid in the current directory with the following content:

(set-ywsid! "<your-personal-ywsid-goes-here>")

Version History