@koopjs/provider-yelp

Yelp provider for koop

Usage no npm install needed!

<script type="module">
  import koopjsProviderYelp from 'https://cdn.skypack.dev/@koopjs/provider-yelp';
</script>

README

Koop Provider Yelp

This is a Yelp provider for Koop.

Configure

Koop plugins use the node-config module for setting configuration settings. See the node-config documentation for usage details. The Koop Yelp provider currently has the following configuration settings:

{
  "koopProviderYelp": {
    "api_key": "your_api_key"
  }
}

Get your API Key from the Yelp API Management Console.

Options

  • term - the search term that goes to the Yelp API. Set this in the where parameter (ex: where: term = 'Hamburgers')
  • orderByFields is passed to the sort_by property of the Yelp API. See the documentation for more info on how the sort_by attribute is handled by the Yelp API.

Dev Server

For development, this project uses the Koop CLI to set up a dev server. It can be started via the terminal:

npm start

The server will be running at http://localhost:8080 or at the port specified at the configuration.

Check your instance with this test endpoint: http://localhost:8080/koop-provider-yelp/rest/services/0/FeatureServer/0/query (and add it to a map)

Limitations

This provider uses the "Yelp Fusion" (v3) API. See that documentation for full limitations. Specifically, note that:

  • Yelp API Keys have daily and per-minute request limits
  • Search results are limited to 50 results. This provider does not currently do paging to get all results.
  • Not all Feature Service options are available through the API. For example, bounding box searches are approximated to point and radius in the Yelp API. This, combined with the above limitations, may provide unexpected display when searching for lots of points across a large area in a map. For best results, use the term attribute to search on a specific term and limit searches to a small area.