{
  "openapi": "3.0.1",
  "info": {
    "title": "Yelp Reviews Scraper",
    "description": "Easily extract Yelp business reviews at scale. This Yelp Reviews Scraper collects ratings, review text, reviewer details, timestamps, photos, and business info. Export data in JSON, CSV, Excel, or via API.",
    "version": "0.3",
    "x-build-id": "E9by93Xy9mxP5h5PY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/web_wanderer~yelp-reviews-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-web_wanderer-yelp-reviews-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/web_wanderer~yelp-reviews-scraper/runs": {
      "post": {
        "operationId": "runs-sync-web_wanderer-yelp-reviews-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/web_wanderer~yelp-reviews-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-web_wanderer-yelp-reviews-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",
        "properties": {
          "biz_urls": {
            "title": "Business Page URLs",
            "uniqueItems": true,
            "type": "array",
            "description": "Direct Yelp business page URLs to extract data from.",
            "items": {
              "type": "string"
            }
          },
          "biz_ids": {
            "title": "Business IDs",
            "uniqueItems": true,
            "type": "array",
            "description": "Yelp business `EncBizId` to scrape (e.g., 'cOcFMN_0nCqHHJ4KZhe5vA').",
            "items": {
              "type": "string"
            }
          },
          "include_personal_data": {
            "title": "Include personal information",
            "type": "boolean",
            "description": "If checked the actor will return author personal information such as author name, reviews, profile photo, friend count etc.",
            "default": false
          },
          "reviews_limit": {
            "title": "Review per business",
            "minimum": 1,
            "type": "integer",
            "description": "Number of reviews to crawl per business.",
            "default": 40
          },
          "reviews_sort": {
            "title": "Review Sort By",
            "enum": [
              "recommended",
              "newest",
              "oldest",
              "rating_desc",
              "rating_asc",
              "elites"
            ],
            "type": "string",
            "description": "Select how to sort reviews.",
            "default": "recommended"
          },
          "reviews_rating": {
            "title": "filter by review rating",
            "type": "array",
            "description": "Select review ratings to filter by.",
            "items": {
              "type": "string",
              "enum": [
                "5",
                "4",
                "3",
                "2",
                "1"
              ],
              "enumTitles": [
                "5 stars",
                "4 stars",
                "3 stars",
                "2 stars",
                "1 star"
              ]
            }
          },
          "reviews_language": {
            "title": "Review Language",
            "type": "string",
            "description": "Filter reviews by language (e.g., 'en' for English, 'fr' for French). Leave empty to include all languages.",
            "default": "en"
          },
          "reviews_keywords": {
            "title": "Reviews must contain",
            "uniqueItems": true,
            "type": "array",
            "description": "Enter keywords to filter reviews by their text content\n.Maximum of 5 keywords can be added. Reviews must contain at least one of the keywords to be included.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "reviews_translate": {
            "title": "Translate reviews",
            "type": "string",
            "description": "Translate reviews to a specific language (e.g., 'fr' for French, 'de' for German). Leave empty to keep original language.",
            "default": ""
          },
          "domain": {
            "title": "Yelp Domain",
            "enum": [
              "www.yelp.com",
              "www.yelp.ca",
              "www.yelp.co.uk",
              "www.yelp.com.au",
              "www.yelp.com.sg",
              "www.yelp.com.hk",
              "www.yelp.com.ph",
              "www.yelp.com.tr",
              "www.yelp.com.mx",
              "www.yelp.com.ar",
              "www.yelp.co.nz",
              "www.yelp.com.tw",
              "www.yelp.cl",
              "www.yelp.com.br",
              "www.yelp.de",
              "www.yelp.fr",
              "www.yelp.it",
              "www.yelp.nl",
              "www.yelp.ie",
              "www.yelp.at",
              "www.yelp.dk",
              "www.yelp.no",
              "www.yelp.pl",
              "www.yelp.pt",
              "www.yelp.cz",
              "www.yelp.es",
              "www.yelp.se",
              "www.yelp.fi",
              "de.yelp.ch",
              "fr.yelp.ch",
              "it.yelp.ch",
              "en.yelp.ch",
              "en.yelp.be",
              "fr.yelp.be",
              "nl.yelp.be",
              "en.yelp.my",
              "ms.yelp.my",
              "en.yelp.com.hk",
              "en.yelp.com.ph",
              "fil.yelp.com.ph",
              "fi.yelp.fi",
              "sv.yelp.fi",
              "ja.yelp.co.jp"
            ],
            "type": "string",
            "description": "Select the Yelp regional domain to use.",
            "default": "www.yelp.com"
          },
          "search_urls": {
            "title": "Search URLs",
            "uniqueItems": false,
            "type": "array",
            "description": "Yelp search result pages to crawl (e.g., coffee shops in a city).",
            "items": {
              "type": "string"
            }
          },
          "search_location": {
            "title": "Search Location",
            "type": "string",
            "description": "Enter a city/zip or area name to search within."
          },
          "search_limit": {
            "title": "Pages to scrape per search query",
            "minimum": 1,
            "maximum": 40,
            "type": "integer",
            "description": "Number of pages to crawl per search or business start point.",
            "default": 1
          },
          "search_sort": {
            "title": "Sort Option",
            "enum": [
              "recommended",
              "rating",
              "review_count"
            ],
            "type": "string",
            "description": "Select how to sort search results.",
            "default": "recommended"
          },
          "search_price": {
            "title": "Price Filter",
            "type": "array",
            "description": "Select price ranges to filter by. You can select multiple.",
            "items": {
              "type": "string",
              "enum": [
                "RestaurantsPriceRange2.1",
                "RestaurantsPriceRange2.2",
                "RestaurantsPriceRange2.3",
                "RestaurantsPriceRange2.4"
              ],
              "enumTitles": [
                "$",
                "$$",
                "$$$",
                "$$$$"
              ]
            }
          },
          "search_features": {
            "title": "Feature Filter",
            "type": "array",
            "description": "Select business feature filters to include (e.g., WiFi.free, DogsAllowed). You can select multiple.",
            "items": {
              "type": "string",
              "enum": [
                "WiFi.free",
                "ByAppointmentOnly",
                "BusinessAcceptsApplePay",
                "DogsAllowed",
                "WheelchairAccessible",
                "BusinessAcceptsBitcoin",
                "CoatCheck",
                "ExternalOnlineReservations",
                "FlowerDelivery",
                "GoodForKids",
                "HasTV",
                "hottest_new_opening",
                "LikedByForties",
                "LikedByThirties",
                "LikedByTwenties",
                "Open24Hours",
                "CheapDelivery",
                "FastDelivery",
                "FreeDelivery",
                "PlatformPreviouslyOrdered",
                "PlatformSpaBooking",
                "RestaurantsGoodForGroups",
                "RestaurantsTableService",
                "BusinessParking.street",
                "BusinessParking.garage",
                "BusinessParking.valet",
                "BusinessParking.lot",
                "BusinessParking.validated",
                "Smoking.no",
                "Smoking.outdoor",
                "Smoking.yes",
                "WiFi.paid",
                "OutdoorSeating",
                "GoodForMeal.lunch",
                "GoodForMeal.brunch",
                "GoodForMeal.breakfast",
                "BusinessAcceptsCreditCards",
                "BusinessOpenToAll",
                "LikedByVegetarians",
                "OffersMilitaryDiscount",
                "OnlineMessageThisBusiness",
                "PlatformOnlineBooking",
                "HappyHour",
                "GoodForMeal.dessert",
                "GoodForMeal.latenight"
              ],
              "enumTitles": [
                "WiFi (free)",
                "By appointment only",
                "Accepts Apple Pay",
                "Dogs allowed",
                "Wheelchair accessible",
                "Accepts Bitcoin",
                "Coat check",
                "External online reservations",
                "Flower delivery",
                "Good for kids",
                "Has TV",
                "Hottest new opening",
                "Liked by forties",
                "Liked by thirties",
                "Liked by twenties",
                "Open 24 hours",
                "Cheap delivery",
                "Fast delivery",
                "Free delivery",
                "Platform previously ordered",
                "Platform spa booking",
                "Good for groups",
                "Table service",
                "Parking (street)",
                "Parking (garage)",
                "Parking (valet)",
                "Parking (lot)",
                "Parking (validated)",
                "Smoking no",
                "Smoking outdoor",
                "Smoking yes",
                "WiFi (paid)",
                "Outdoor seating",
                "Good for lunch",
                "Good for brunch",
                "Good for breakfast",
                "Accepts credit cards",
                "Open to all",
                "Liked by vegetarians",
                "Offers military discount",
                "Online message this business",
                "Platform online booking",
                "Happy hour",
                "Good for dessert",
                "Good for late night"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}