{
  "openapi": "3.0.1",
  "info": {
    "title": "Yelp Real-Time Data — Business Scraper & Lead Extractor",
    "description": "Real-time Yelp scraper for business search, details, reviews & contact enrichment (phone, website, email). Reliable, proxy-ready, LLM/MCP-friendly. Export leads to JSON, CSV, or Excel.",
    "version": "0.0",
    "x-build-id": "31uRi62wXTNiJz4W5"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/b2b_leads~Yelp-Real-Time-Data/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-b2b_leads-Yelp-Real-Time-Data",
        "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/b2b_leads~Yelp-Real-Time-Data/runs": {
      "post": {
        "operationId": "runs-sync-b2b_leads-Yelp-Real-Time-Data",
        "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/b2b_leads~Yelp-Real-Time-Data/run-sync": {
      "post": {
        "operationId": "run-sync-b2b_leads-Yelp-Real-Time-Data",
        "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": {
          "maxItems": {
            "title": "Default max items per feature",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Fallback cap per feature when a feature-specific limit is not set.",
            "default": 10
          },
          "enableBusinessSearch": {
            "title": "Business Search",
            "type": "boolean",
            "description": "Search Yelp by keyword and location.",
            "default": true
          },
          "searchQueries": {
            "title": "Search queries",
            "type": "array",
            "description": "Queries in \"keyword :: location\" format, e.g. \"dentists :: Miami, FL\".",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchKeywords": {
            "title": "Search keywords (cross-product)",
            "type": "array",
            "description": "Alternative to searchQueries — combined with searchLocations.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchLocations": {
            "title": "Search locations (cross-product)",
            "type": "array",
            "description": "Locations paired with searchKeywords (every keyword × every location).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchUrls": {
            "title": "Direct search URLs",
            "type": "array",
            "description": "Full Yelp search result URLs to scrape directly.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchMaxResultsPerQuery": {
            "title": "Max results per query",
            "minimum": 1,
            "maximum": 240,
            "type": "integer",
            "description": "Maximum businesses to return per query or URL (1–240).",
            "default": 10
          },
          "searchPage": {
            "title": "Start page",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "First search results page to scrape (1-based).",
            "default": 1
          },
          "searchMaxPages": {
            "title": "Max pages per query",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Number of search result pages to crawl per query.",
            "default": 1
          },
          "searchSort": {
            "title": "Sort order",
            "enum": [
              "recommended",
              "rating",
              "review_count",
              "distance"
            ],
            "type": "string",
            "description": "How Yelp sorts search results.",
            "default": "recommended"
          },
          "searchCategory": {
            "title": "Category filter",
            "type": "string",
            "description": "Yelp category slug or cflt code to restrict search results.",
            "default": ""
          },
          "searchPrice": {
            "title": "Price range",
            "enum": [
              "",
              "$",
              "$$",
              "$$$",
              "$$$$"
            ],
            "type": "string",
            "description": "Filter by price tier.",
            "default": ""
          },
          "searchOpenNow": {
            "title": "Open now",
            "type": "boolean",
            "description": "Only show businesses open right now.",
            "default": false
          },
          "searchOpenAt": {
            "title": "Open at time",
            "type": "string",
            "description": "Filter businesses open at a specific time (HH:mm, 24-hour).",
            "default": ""
          },
          "searchOpenOn": {
            "title": "Open on day",
            "type": "string",
            "description": "Filter businesses open on a specific day, e.g. Monday.",
            "default": ""
          },
          "searchAttributes": {
            "title": "Business attributes",
            "type": "array",
            "description": "Yelp attribute filters, e.g. hot_and_new, offers_delivery, wheelchair_accessible.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchDistance": {
            "title": "Distance radius (miles)",
            "minimum": 0,
            "type": "number",
            "description": "Search radius in miles. 0 = Yelp default.",
            "default": 0
          },
          "searchRating": {
            "title": "Minimum Yelp rating filter",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Yelp-native minimum rating filter (e.g. 4, 4.5). 0 = off.",
            "default": 0
          },
          "searchEnrichContacts": {
            "title": "Enrich contacts from detail pages",
            "type": "boolean",
            "description": "Fetch full phone, website, and optional email for each search result via GraphQL/detail fetch.",
            "default": false
          },
          "searchIncludeSponsored": {
            "title": "Include sponsored results",
            "type": "boolean",
            "description": "Include ad/sponsored rows in search output. Use Result filters → Exclude sponsored to drop them.",
            "default": true
          },
          "enableBusinessDetails": {
            "title": "Business Details",
            "type": "boolean",
            "description": "Scrape full contact profiles for specific business URLs.",
            "default": false
          },
          "businessUrls": {
            "title": "Business URLs",
            "type": "array",
            "description": "Full Yelp /biz/... URLs to scrape.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "businessAliases": {
            "title": "Business aliases (slugs)",
            "type": "array",
            "description": "Yelp business slug only, e.g. joes-pizza-brooklyn.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "encBizIds": {
            "title": "Encoded business IDs",
            "type": "array",
            "description": "Yelp encBizId values for fastest GraphQL fetch.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "includeHours": {
            "title": "Include hours",
            "type": "boolean",
            "description": "Include full weekly operating hours.",
            "default": true
          },
          "includeAmenities": {
            "title": "Include amenities",
            "type": "boolean",
            "description": "Include amenities and highlights.",
            "default": true
          },
          "includePhotos": {
            "title": "Include inline photos",
            "type": "boolean",
            "description": "Include photo URLs on the details row (or use Business Photos feature).",
            "default": false
          },
          "includeMenu": {
            "title": "Include menu",
            "type": "boolean",
            "description": "Include menu URL and parseable menu items when available.",
            "default": false
          },
          "includeRatingDistribution": {
            "title": "Include rating distribution",
            "type": "boolean",
            "description": "Include star rating histogram (1–5 stars).",
            "default": true
          },
          "includeSocialLinks": {
            "title": "Include social links",
            "type": "boolean",
            "description": "Include Facebook, Instagram, and other social links when listed.",
            "default": true
          },
          "includeServiceArea": {
            "title": "Include service area",
            "type": "boolean",
            "description": "Include service area for contractors and mobile businesses.",
            "default": false
          },
          "includePaymentMethods": {
            "title": "Include payment methods",
            "type": "boolean",
            "description": "Include accepted payment types when listed.",
            "default": false
          },
          "detailsIncludeEmailFromWebsite": {
            "title": "Enrich email (Details only override)",
            "type": "boolean",
            "description": "Override global email enrichment setting for Business Details only.",
            "default": false
          },
          "enableBusinessReviews": {
            "title": "Business Reviews",
            "type": "boolean",
            "description": "Scrape paginated customer reviews for specific businesses.",
            "default": false
          },
          "reviewsEncBizIds": {
            "title": "Review business IDs (encBizId)",
            "type": "array",
            "description": "Encoded business IDs to fetch reviews for.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "reviewsBusinessUrls": {
            "title": "Review business URLs",
            "type": "array",
            "description": "Yelp /biz/... URLs to fetch reviews for.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "reviewsMaxPerBusiness": {
            "title": "Max reviews per business",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum reviews to collect per business (1–500).",
            "default": 10
          },
          "reviewsSortBy": {
            "title": "Review sort",
            "enum": [
              "DATE_DESC",
              "DATE_ASC",
              "RATING_DESC",
              "RATING_ASC",
              "ELITE",
              "LOWEST_RATED"
            ],
            "type": "string",
            "description": "How Yelp sorts reviews.",
            "default": "DATE_DESC"
          },
          "reviewsFilterByRating": {
            "title": "Star ratings to include",
            "type": "array",
            "description": "Subset of star ratings to fetch (1–5). Default: all stars.",
            "default": [
              5,
              4,
              3,
              2,
              1
            ]
          },
          "reviewsLanguage": {
            "title": "Review language",
            "type": "string",
            "description": "Language code for reviews.",
            "default": "en"
          },
          "reviewsMinConfidence": {
            "title": "Minimum confidence",
            "enum": [
              "HIGH_CONFIDENCE",
              "LOW_CONFIDENCE"
            ],
            "type": "string",
            "description": "Yelp review confidence level filter.",
            "default": "HIGH_CONFIDENCE"
          },
          "reviewsDateFrom": {
            "title": "Reviews from date",
            "type": "string",
            "description": "ISO date — skip reviews older than this (post-scrape filter).",
            "default": ""
          },
          "reviewsDateTo": {
            "title": "Reviews to date",
            "type": "string",
            "description": "ISO date — skip reviews newer than this (post-scrape filter).",
            "default": ""
          },
          "reviewsMinWordCount": {
            "title": "Minimum word count",
            "minimum": 0,
            "type": "integer",
            "description": "Skip reviews shorter than this many words.",
            "default": 0
          },
          "reviewsKeywordsInclude": {
            "title": "Keywords to include",
            "type": "array",
            "description": "Keep reviews whose body contains any of these keywords.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "reviewsKeywordsExclude": {
            "title": "Keywords to exclude",
            "type": "array",
            "description": "Drop reviews whose body contains any of these keywords.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "reviewsEliteOnly": {
            "title": "Elite reviewers only",
            "type": "boolean",
            "description": "Only keep reviews from Yelp Elite reviewers.",
            "default": false
          },
          "reviewsWithPhotosOnly": {
            "title": "Reviews with photos only",
            "type": "boolean",
            "description": "Only keep reviews that include photos.",
            "default": false
          },
          "reviewsWithTextOnly": {
            "title": "Reviews with text only",
            "type": "boolean",
            "description": "Drop rating-only reviews with no text body.",
            "default": true
          },
          "reviewsMinRating": {
            "title": "Per-review minimum stars",
            "minimum": 0,
            "maximum": 5,
            "type": "integer",
            "description": "Post-scrape filter: minimum star rating per review. 0 = off.",
            "default": 0
          },
          "reviewsMaxRating": {
            "title": "Per-review maximum stars",
            "minimum": 0,
            "maximum": 5,
            "type": "integer",
            "description": "Post-scrape filter: maximum star rating per review. 5 = off.",
            "default": 5
          },
          "reviewsIncludeBusinessContact": {
            "title": "Attach business contact to each review",
            "type": "boolean",
            "description": "Include business name, phone, website, and rating on each review row.",
            "default": true
          },
          "enableBusinessPhotos": {
            "title": "Business Photos",
            "type": "boolean",
            "description": "Scrape photo URLs and captions for specific businesses.",
            "default": false
          },
          "photosEncBizIds": {
            "title": "Photo business IDs (encBizId)",
            "type": "array",
            "description": "Encoded business IDs to fetch photos for.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "photosBusinessUrls": {
            "title": "Photo business URLs",
            "type": "array",
            "description": "Yelp /biz/... URLs to fetch photos for.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "photosMaxPerBusiness": {
            "title": "Max photos per business",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Maximum photos to collect per business (1–100).",
            "default": 20
          },
          "photosSortBy": {
            "title": "Photo sort",
            "enum": [
              "newest",
              "oldest",
              "highest_rated"
            ],
            "type": "string",
            "description": "How to sort photos.",
            "default": "newest"
          },
          "photosDateFrom": {
            "title": "Photos from date",
            "type": "string",
            "description": "Upload date lower bound (ISO date).",
            "default": ""
          },
          "photosDateTo": {
            "title": "Photos to date",
            "type": "string",
            "description": "Upload date upper bound (ISO date).",
            "default": ""
          },
          "photosCategory": {
            "title": "Photo category",
            "enum": [
              "",
              "food",
              "menu",
              "inside",
              "outside",
              "all"
            ],
            "type": "string",
            "description": "Filter photos by category.",
            "default": ""
          },
          "photosWithCaptionOnly": {
            "title": "Photos with caption only",
            "type": "boolean",
            "description": "Only keep photos that have a caption.",
            "default": false
          },
          "photosIncludeUserInfo": {
            "title": "Include photographer info",
            "type": "boolean",
            "description": "Include photographer name and profile URL when available.",
            "default": false
          },
          "photosIncludeBusinessContact": {
            "title": "Attach business contact to each photo",
            "type": "boolean",
            "description": "Include business name and phone on each photo row.",
            "default": true
          },
          "enableScrapeByUrl": {
            "title": "Scrape By URL",
            "type": "boolean",
            "description": "Paste any Yelp URL — search, business, reviews, photos, category, or events.",
            "default": false
          },
          "scrapeUrls": {
            "title": "Yelp URLs",
            "type": "array",
            "description": "Yelp URLs to scrape when Scrape By URL is enabled.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "scrapeExtractType": {
            "title": "Extract type",
            "enum": [
              "auto",
              "search",
              "business",
              "reviews",
              "photos",
              "category",
              "events"
            ],
            "type": "string",
            "description": "Force extraction type or use auto-detection.",
            "default": "auto"
          },
          "scrapeMaxPages": {
            "title": "Max pages",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum pages to crawl for paginated list URLs.",
            "default": 1
          },
          "scrapeInheritFeatureFilters": {
            "title": "Inherit feature filters",
            "type": "boolean",
            "description": "Apply relevant filters from other sections based on detected page type.",
            "default": true
          },
          "enableCategoryBrowse": {
            "title": "Category Browse",
            "type": "boolean",
            "description": "List businesses in a Yelp category for a location.",
            "default": false
          },
          "categoryUrls": {
            "title": "Category URLs",
            "type": "array",
            "description": "Full Yelp category page URLs.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "categoryNames": {
            "title": "Category names",
            "type": "array",
            "description": "Category names, e.g. Plumbers, Coffee & Tea. Requires categoryLocation.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "categoryLocation": {
            "title": "Category location",
            "type": "string",
            "description": "Location for categoryNames searches, e.g. Denver, CO.",
            "default": ""
          },
          "categoryMaxBusinesses": {
            "title": "Max businesses",
            "minimum": 1,
            "maximum": 240,
            "type": "integer",
            "description": "Maximum businesses to return per category (1–240).",
            "default": 50
          },
          "categorySort": {
            "title": "Sort order",
            "enum": [
              "recommended",
              "rating",
              "review_count",
              "distance"
            ],
            "type": "string",
            "description": "How Yelp sorts category results.",
            "default": "recommended"
          },
          "categoryPrice": {
            "title": "Price range",
            "enum": [
              "",
              "$",
              "$$",
              "$$$",
              "$$$$"
            ],
            "type": "string",
            "description": "Filter by price tier.",
            "default": ""
          },
          "categoryOpenNow": {
            "title": "Open now",
            "type": "boolean",
            "description": "Only show businesses open right now.",
            "default": false
          },
          "categoryAttributes": {
            "title": "Business attributes",
            "type": "array",
            "description": "Yelp attribute filters for category browse.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "categoryDistance": {
            "title": "Distance radius (miles)",
            "minimum": 0,
            "type": "number",
            "description": "Search radius in miles. 0 = Yelp default.",
            "default": 0
          },
          "categoryRating": {
            "title": "Minimum Yelp rating filter",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Yelp-native minimum rating filter. 0 = off.",
            "default": 0
          },
          "categoryEnrichContacts": {
            "title": "Enrich contacts from detail pages",
            "type": "boolean",
            "description": "Fetch full phone, website, and optional email for each category result.",
            "default": false
          },
          "categoryIncludeSubcategories": {
            "title": "Include subcategories",
            "type": "boolean",
            "description": "Drill into subcategories when the category URL supports it.",
            "default": true
          },
          "enableEvents": {
            "title": "Events",
            "type": "boolean",
            "description": "Scrape Yelp event listings by location or URL.",
            "default": false
          },
          "eventsLocation": {
            "title": "Events location",
            "type": "string",
            "description": "City or region to search for events.",
            "default": ""
          },
          "eventsUrls": {
            "title": "Event URLs",
            "type": "array",
            "description": "Direct Yelp event page URLs.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "eventsMaxItems": {
            "title": "Max events",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Maximum events to collect.",
            "default": 20
          },
          "eventsDateFrom": {
            "title": "Events from date",
            "type": "string",
            "description": "ISO date — skip events before this date.",
            "default": ""
          },
          "eventsDateTo": {
            "title": "Events to date",
            "type": "string",
            "description": "ISO date — skip events after this date.",
            "default": ""
          },
          "eventsFreeOnly": {
            "title": "Free events only",
            "type": "boolean",
            "description": "Only keep free events.",
            "default": false
          },
          "eventsCategory": {
            "title": "Event category",
            "type": "string",
            "description": "Filter by event category, e.g. Music, Food.",
            "default": ""
          },
          "eventsSortBy": {
            "title": "Event sort",
            "enum": [
              "date",
              "popular",
              "distance"
            ],
            "type": "string",
            "description": "How to sort events.",
            "default": "date"
          },
          "eventsKeywordsInclude": {
            "title": "Keywords to include",
            "type": "array",
            "description": "Keep events whose title or description contains any keyword.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "enableFullPipeline": {
            "title": "Full Pipeline (Search → Enrich → Reviews)",
            "type": "boolean",
            "description": "One-shot lead gen: search, enrich contacts, optionally fetch reviews.",
            "default": false
          },
          "pipelineQueries": {
            "title": "Pipeline queries",
            "type": "array",
            "description": "Queries in \"keyword :: location\" format for the pipeline.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "pipelineMaxBusinesses": {
            "title": "Max businesses",
            "minimum": 1,
            "maximum": 240,
            "type": "integer",
            "description": "Maximum total businesses in the pipeline run.",
            "default": 50
          },
          "pipelineFetchReviews": {
            "title": "Also fetch reviews",
            "type": "boolean",
            "description": "Scrape reviews for each business after enrichment.",
            "default": false
          },
          "pipelineReviewsMax": {
            "title": "Reviews per business",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Maximum reviews per business when pipeline reviews are enabled.",
            "default": 5
          },
          "pipelineIncludeEmail": {
            "title": "Include email enrichment",
            "type": "boolean",
            "description": "Enable website email enrichment during the pipeline.",
            "default": true
          },
          "includeEmailFromWebsite": {
            "title": "Enrich email from business website",
            "type": "boolean",
            "description": "When enabled, visit the business website (contact/about pages) to find an email address. Email is not listed on Yelp profiles.",
            "default": false
          },
          "emailMaxContactPages": {
            "title": "Max website pages to scan",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum pages to fetch per business website when email enrichment is enabled (1–10).",
            "default": 5
          },
          "emailTimeoutSeconds": {
            "title": "Website timeout (seconds)",
            "minimum": 5,
            "maximum": 60,
            "type": "integer",
            "description": "Per-website timeout for email enrichment requests.",
            "default": 15
          },
          "filterPreset": {
            "title": "Filter preset",
            "enum": [
              "none",
              "lead_gen",
              "seo_audit",
              "high_rating",
              "custom"
            ],
            "type": "string",
            "description": "Apply a named filter preset. Explicit fields below override preset values when set.",
            "default": "none"
          },
          "filterMinRating": {
            "title": "Minimum rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Skip businesses below this star rating. 0 = off.",
            "default": 0
          },
          "filterMaxRating": {
            "title": "Maximum rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Skip businesses above this star rating. 5 = off.",
            "default": 5
          },
          "filterMinReviewCount": {
            "title": "Minimum review count",
            "minimum": 0,
            "type": "integer",
            "description": "Skip businesses with fewer reviews than this. 0 = off.",
            "default": 0
          },
          "filterMaxReviewCount": {
            "title": "Maximum review count",
            "minimum": 0,
            "type": "integer",
            "description": "Skip businesses with more reviews than this. 0 = no maximum.",
            "default": 0
          },
          "filterRequirePhone": {
            "title": "Require phone number",
            "type": "boolean",
            "description": "Only keep businesses that have a phone number.",
            "default": false
          },
          "filterRequireWebsite": {
            "title": "Require website",
            "type": "boolean",
            "description": "Only keep businesses that have a website URL.",
            "default": false
          },
          "filterRequireEmail": {
            "title": "Require email",
            "type": "boolean",
            "description": "Only keep businesses with an email (after website enrichment if enabled).",
            "default": false
          },
          "filterExcludeClosed": {
            "title": "Exclude permanently closed",
            "type": "boolean",
            "description": "Drop businesses marked as permanently closed on Yelp.",
            "default": true
          },
          "filterExcludeAds": {
            "title": "Exclude sponsored results",
            "type": "boolean",
            "description": "Drop sponsored/ad rows from search and category browse results.",
            "default": false
          },
          "filterCategoriesInclude": {
            "title": "Categories to include",
            "type": "array",
            "description": "Keep only businesses matching any of these categories (case-insensitive). Empty = all.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "filterCategoriesExclude": {
            "title": "Categories to exclude",
            "type": "array",
            "description": "Drop businesses matching any of these categories (case-insensitive).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "filterMinCompletenessScore": {
            "title": "Minimum data completeness score",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Minimum dataCompletenessScore (0–100) required to keep a business row. 0 = off.",
            "default": 0
          },
          "proxyConfiguration": {
            "title": "Proxy settings",
            "type": "object",
            "description": "Use Apify Proxy with US Residential for best results on Yelp. Leave the default unless you know you need something else.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "US"
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}