Taco Scout GPT

Taco Scout GPT · GPT-Aktionen

Yelp Fusion API

Provides access to Yelp's local content and user reviews for businesses around the world.

  • GET /businesses/searchSearch for businesses

    Search for businesses by keyword, category, location, price level, etc.

Ursprüngliches API-Schema
{
  "openapi": "3.0.0",
  "info": {
    "title": "Yelp Fusion API",
    "version": "1.0.0",
    "description": "Provides access to Yelp's local content and user reviews for businesses around the world."
  },
  "servers": [
    {
      "url": "https://api.yelp.com/v3"
    }
  ],
  "security": [
    {
      "ApiKeyAuth": [
        "read",
        "write"
      ]
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization"
      }
    },
    "schemas": {
      "BusinessSearchResponse": {
        "type": "object",
        "properties": {
          "businesses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Business"
            }
          },
          "total": {
            "type": "integer"
          },
          "region": {
            "type": "object",
            "properties": {
              "center": {
                "type": "object",
                "properties": {
                  "latitude": {
                    "type": "number"
                  },
                  "longitude": {
                    "type": "number"
                  }
                }
              }
            }
          }
        }
      },
      "Business": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "location": {
            "type": "object",
            "properties": {
              "address1": {
                "type": "string"
              },
              "address2": {
                "type": "string"
              },
              "address3": {
                "type": "string"
              },
              "city": {
                "type": "string"
              },
              "zip_code": {
                "type": "string"
              },
              "country": {
                "type": "string"
              },
              "state": {
                "type": "string"
              },
              "display_address": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            }
          },
          "coordinates": {
            "type": "object",
            "properties": {
              "latitude": {
                "type": "number"
              },
              "longitude": {
                "type": "number"
              }
            }
          },
          "phone": {
            "type": "string"
          },
          "rating": {
            "type": "number"
          },
          "review_count": {
            "type": "integer"
          }
        }
      }
    }
  },
  "paths": {
    "/businesses/search": {
      "get": {
        "summary": "Search for businesses",
        "description": "Search for businesses by keyword, category, location, price level, etc.",
        "operationId": "businessSearch",
        "parameters": [
          {
            "name": "location",
            "in": "query",
            "description": "Geographic area for the search. Required.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "San Francisco, CA"
          },
          {
            "name": "term",
            "in": "query",
            "description": "Search term, e.g., 'food', 'restaurants', or a specific business name. Required.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "coffee"
          },
          {
            "name": "radius",
            "in": "query",
            "description": "Search radius in meters. Optional. Max 40,000 (about 25 miles).",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 1000
          },
          {
            "name": "categories",
            "in": "query",
            "description": "Filter search results by category. Use category aliases, comma-separated.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "bars,french"
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Locale code in the format {language code}_{country code}.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "en_US"
          },
          {
            "name": "price",
            "in": "query",
            "description": "Filter by pricing levels, comma-separated (1 = $, 2 = $$, 3 = $$$, 4 = $$$$).",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "1,2,3"
          },
          {
            "name": "open_now",
            "in": "query",
            "description": "Return businesses that are open now. Cannot be used with open_at.",
            "required": false,
            "schema": {
              "type": "boolean"
            },
            "example": true
          },
          {
            "name": "open_at",
            "in": "query",
            "description": "Unix time for when businesses need to be open. Cannot be used with open_now.",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 1609459200
          },
          {
            "name": "attributes",
            "in": "query",
            "description": "Additional filters: hot_and_new, reservation, deals, etc., comma-separated.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "hot_and_new,request_a_quote"
          },
          {
            "name": "sort_by",
            "in": "query",
            "description": "Sort mode: best_match, rating, review_count, or distance.",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "rating"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Number of results to return. Maximum is 50.",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 20
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Offset the list of returned results by this amount.",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "example": 0
          }
        ],
        "responses": {
          "200": {
            "description": "One or more businesses were found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BusinessSearchResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request. Message varies depending on failure scenario."
          }
        }
      }
    }
  }
}