Skip to content

Latest commit

 

History

History
48 lines (36 loc) · 1.23 KB

README.md

File metadata and controls

48 lines (36 loc) · 1.23 KB

GraphQL Binding for Yelp

Embed Yelp's GraphQL API into your server application

Install

yarn add graphql-binding-yelp

Example (Demo @TODO)

See example directory for full example application.

const { Yelp } = require("graphql-binding-yelp");
const { GraphQLServer } = require("graphql-yoga");
const { importSchema } = require("graphql-import");

const favoriteBusinesses = [
  { term: "Wawa", location: "Winter Garden, FL" },
  { term: "7-Eleven", location: "Winter Garden, FL" }
];

const apiKey = "__ENTER_YOUR_YELP_API_KEY__";
const yelp = new Yelp(apiKey);

const typeDefs = importSchema("schemas/app.graphql");
const resolvers = {
  Query: {
    hello: (parent, { name }) => `Hello ${name || "world!"}`,
    favoriteBusinesses: (parent, args, context, info) => {
      return Promise.all(
        favoriteBusinesses.map(args =>
          yelp.delegate("query", "search", args, context, info)
        )
      );
    }
  }
};

const server = new GraphQLServer({ resolvers, typeDefs });
server.start(() => console.log("Server running on http://localhost:4000"));

How to create a Yelp API Key

You’ll need to create a client, join the beta program, and grab the API key from your client settings.