{
  "openapi": "3.0.1",
  "info": {
    "title": "Yelp Advanced Data Scraper",
    "description": "Effortlessly scrape detailed restaurant data from Yelp, including ratings, reviews, amenities, and operating hours. Perfect for building robust datasets for market analysis, apps, or research projects.",
    "version": "0.0",
    "x-build-id": "d0rHDyVVpts5Qlhdd"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/delicious_zebu~yelp-advanced-data-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-delicious_zebu-yelp-advanced-data-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/delicious_zebu~yelp-advanced-data-scraper/runs": {
      "post": {
        "operationId": "runs-sync-delicious_zebu-yelp-advanced-data-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/delicious_zebu~yelp-advanced-data-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-delicious_zebu-yelp-advanced-data-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "keywords",
          "locations"
        ],
        "properties": {
          "keywords": {
            "title": "Search Keywords",
            "uniqueItems": false,
            "type": "array",
            "description": "List of search keywords to look for businesses (e.g., pizza, restaurant).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "uniqueItems": false,
            "type": "array",
            "description": "List of locations to search for the keywords (e.g., New York, Los Angeles).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "languages": {
            "title": "Website Language",
            "enum": [
              "Bahasa Malaysia (Malaysia)",
              "Čeština (Česká republika)",
              "Dansk (Danmark)",
              "Deutsch (Deutschland)",
              "Deutsch (Österreich)",
              "Deutsch (Schweiz)",
              "English (Australia)",
              "English (Belgium)",
              "English (Canada)",
              "English (Hong Kong)",
              "English (Malaysia)",
              "English (New Zealand)",
              "English (Philippines)",
              "English (Republic of Ireland)",
              "English (Singapore)",
              "English (Switzerland)",
              "English (United Kingdom)",
              "English (United States)",
              "Español (Argentina)",
              "Español (Chile)",
              "Español (España)",
              "Español (México)",
              "Filipino (Pilipinas)",
              "Français (Belgique)",
              "Français (Canada)",
              "Français (France)",
              "Français (Suisse)",
              "Italiano (Italia)",
              "Italiano (Svizzera)",
              "Nederlands (België)",
              "Nederlands (Nederland)",
              "Norsk (Norge)",
              "Polski (Polska)",
              "Português (Brasil)",
              "Português (Portugal)",
              "Suomi (Suomi)",
              "Svenska (Finland)",
              "Svenska (Sverige)",
              "Türkçe (Türkiye)",
              "日本語 (日本)",
              "繁體中文 (台灣)",
              "繁體中文 (香港)"
            ],
            "type": "string",
            "description": "Specify the language interface for Yelp website. Defaults to English (United States).",
            "default": "English (United States)"
          },
          "sort": {
            "title": "Sort Results By",
            "enum": [
              "Recommended",
              "Highest Rated",
              "Most Reviewed"
            ],
            "type": "string",
            "description": "Specify the sorting method for search results. Defaults to Yelp's recommendation.",
            "default": "Recommended"
          },
          "price": {
            "title": "Price Filter",
            "type": "array",
            "description": "Filter businesses by price range using Yelp's $$$$ indicators.",
            "items": {
              "type": "string",
              "enum": [
                "$",
                "$$",
                "$$$",
                "$$$$"
              ],
              "enumTitles": [
                "$",
                "$$",
                "$$$",
                "$$$$"
              ]
            },
            "default": []
          },
          "maxCrawlPages": {
            "title": "Max Crawl Pages",
            "minimum": 1,
            "maximum": 24,
            "type": "integer",
            "description": "Maximum number of pages to crawl for each search query (max is 24 due to Yelp's pagination limit).",
            "default": 3
          },
          "unique_only": {
            "title": "Unique Results Only",
            "type": "boolean",
            "description": "Enable to remove duplicate entries (e.g., advertisements) from scraped data. When disabled, may include duplicates.",
            "default": false
          },
          "urls": {
            "title": "Pre-filtered URLs",
            "uniqueItems": false,
            "type": "array",
            "description": "When advanced filtering requirements exceed keyword search capabilities, use URLs directly copied from Yelp's filtered search results. Users can manually apply complex filters (e.g., specific attributes/hours/features) on Yelp's website, then input the generated URLs here to scrape precisely targeted listings.",
            "default": [],
            "items": {
              "type": "string"
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}