{
  "openapi": "3.0.1",
  "info": {
    "title": "BizBuySell Scraper - Businesses & Franchises For Sale",
    "description": "Scrape every BizBuySell business & franchise for sale in minutes. Get asking price, cash flow (SDE), revenue, EBITDA, broker name, phone & website, category, location and images. Filter by state, price, cash flow and industry. Export to JSON, CSV, Excel for M&A deal sourcing.",
    "version": "0.2",
    "x-build-id": "No7fVE9nVWFExlYcg"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapers_lat~bizbuysell-businesses-for-sale-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapers_lat-bizbuysell-businesses-for-sale-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/scrapers_lat~bizbuysell-businesses-for-sale-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapers_lat-bizbuysell-businesses-for-sale-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/scrapers_lat~bizbuysell-businesses-for-sale-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapers_lat-bizbuysell-businesses-for-sale-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": {
          "keywords": {
            "title": "Keywords / industries",
            "type": "array",
            "description": "One or more business types or keywords to search, e.g. 'restaurant', 'car wash', 'HVAC', 'liquor store', 'laundromat'. Each keyword runs its own search in the same run. Leave empty to list every business for sale.",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "title": "Location (US state or city)",
            "type": "string",
            "description": "US state or city to filter by, e.g. 'California', 'Texas', 'Florida', 'Miami'. Applies to every keyword search. Leave empty for nationwide results."
          },
          "states": {
            "title": "States (multiple)",
            "type": "array",
            "description": "Optional. Search several US states in one run, e.g. ['Texas','Florida','Georgia']. One search runs per state. Overrides the single Location field when set.",
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "Industry categories (multiple)",
            "type": "array",
            "description": "Optional. Extra industry categories to search, e.g. ['Auto Repair','Gas Station','Daycare']. One search runs per category.",
            "items": {
              "type": "string"
            }
          },
          "listingTypes": {
            "title": "Listing types",
            "type": "array",
            "description": "Optional. Which kinds of listings to include: 'Established Business', 'Asset Sale', 'Business Real Estate', 'Startup', 'Franchise'. Leave empty for all businesses for sale.",
            "items": {
              "type": "string"
            }
          },
          "searchUrls": {
            "title": "BizBuySell search or listing URLs",
            "type": "array",
            "description": "Optional. Paste any BizBuySell search-result URLs or individual listing URLs. The scraper replays them exactly, so any on-site filter you build in your browser is honored. Can be combined with keyword searches.",
            "items": {
              "type": "string"
            }
          },
          "urlsFromFile": {
            "title": "Bulk URLs from file (optional)",
            "type": "string",
            "description": "Optional. A link to a plain-text or CSV file (or public Google Sheet export link) with one BizBuySell URL per line. All BizBuySell URLs found are added to the run."
          },
          "minAskingPrice": {
            "title": "Minimum asking price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with an asking price at or above this amount."
          },
          "maxAskingPrice": {
            "title": "Maximum asking price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with an asking price at or below this amount."
          },
          "minCashFlow": {
            "title": "Minimum cash flow / SDE (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with cash flow (seller's discretionary earnings) at or above this amount."
          },
          "maxCashFlow": {
            "title": "Maximum cash flow / SDE (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with cash flow at or below this amount."
          },
          "minRevenue": {
            "title": "Minimum gross revenue (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with gross revenue at or above this amount."
          },
          "maxRevenue": {
            "title": "Maximum gross revenue (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with gross revenue at or below this amount."
          },
          "minEbitda": {
            "title": "Minimum EBITDA (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with EBITDA at or above this amount."
          },
          "maxEbitda": {
            "title": "Maximum EBITDA (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with EBITDA at or below this amount."
          },
          "minEmployees": {
            "title": "Minimum employees",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with at least this many employees."
          },
          "maxEmployees": {
            "title": "Maximum employees",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings with at most this many employees."
          },
          "establishedAfterYear": {
            "title": "Established after year",
            "minimum": 1800,
            "type": "integer",
            "description": "Only keep businesses established in or after this year, e.g. 2010."
          },
          "establishedBeforeYear": {
            "title": "Established before year",
            "minimum": 1800,
            "type": "integer",
            "description": "Only keep businesses established in or before this year."
          },
          "industry": {
            "title": "Industry / category text filter (optional)",
            "type": "string",
            "description": "Optional. Only keep listings whose category contains this text (e.g. 'restaurant', 'automotive'). Leave empty for no filter."
          },
          "sellerFinancing": {
            "title": "Only listings with seller financing",
            "type": "boolean",
            "description": "Keep only listings offering seller financing.",
            "default": false
          },
          "realEstateIncluded": {
            "title": "Only listings with real estate included",
            "type": "boolean",
            "description": "Keep only listings where real estate is included in the asking price.",
            "default": false
          },
          "homeBased": {
            "title": "Only home-based businesses",
            "type": "boolean",
            "description": "Keep only home-based businesses.",
            "default": false
          },
          "relocatable": {
            "title": "Only relocatable businesses",
            "type": "boolean",
            "description": "Keep only businesses that can be relocated.",
            "default": false
          },
          "absenteeOwner": {
            "title": "Only absentee-owner businesses",
            "type": "boolean",
            "description": "Keep only absentee-owner (semi-passive) businesses.",
            "default": false
          },
          "daysListedAgo": {
            "title": "Listed within the last N days",
            "minimum": 0,
            "type": "integer",
            "description": "Only keep listings first posted within this many days, e.g. 30 for new listings this month."
          },
          "maxBusinesses": {
            "title": "Max Businesses To Scrape",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of business listings to return across all searches. The whole matching market can be returned in one run (no page cap). Free Apify plans are capped at 10 per run."
          },
          "fetchDetails": {
            "title": "Include full details (financials + broker contact)",
            "type": "boolean",
            "description": "Return the full record: cash flow, gross revenue, EBITDA, inventory, FF&E, real estate, year established, employees, reason for selling, growth, support, financing, competition, facilities and the broker's name, company and phone. Turn off for a lighter, cheaper run with only the core listing fields.",
            "default": true
          },
          "onlyCompleteResults": {
            "title": "Only complete listings",
            "type": "boolean",
            "description": "Keep only listings that disclose an asking price, cash flow and a broker contact.",
            "default": false
          },
          "deduplicateListings": {
            "title": "De-duplicate listings",
            "type": "boolean",
            "description": "Remove duplicate listings within the run (by listing ID).",
            "default": true
          },
          "monitorMode": {
            "title": "Monitor mode (only new listings)",
            "type": "boolean",
            "description": "Return only businesses not seen in previous runs. Ideal for a scheduled deal-flow alert. Uses a named store to remember what it has already delivered.",
            "default": false
          },
          "monitorStoreName": {
            "title": "Monitor store name",
            "type": "string",
            "description": "Name of the store used to remember previously seen listings in monitor mode. Use one name per saved search.",
            "default": "bizbuysell-monitor"
          },
          "includeRawListing": {
            "title": "Include raw listing object",
            "type": "boolean",
            "description": "Attach the complete raw listing object (every underlying field) to each record for power users.",
            "default": false
          },
          "useDatacenterProxy": {
            "title": "Use datacenter proxy (cheaper)",
            "type": "boolean",
            "description": "Use datacenter proxies instead of the default US residential proxies. Cheaper but a lower success rate; residential is recommended.",
            "default": false
          },
          "maxConcurrency": {
            "title": "Max concurrency (broker enrichment)",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many broker profiles to fetch in parallel when the broker website add-on is on.",
            "default": 8
          },
          "withAiProfileSummary": {
            "title": "AI listing summary (paid add-on)",
            "type": "boolean",
            "description": "Add an AI-generated plain-English summary of each business-for-sale listing. Paid Apify plans only.",
            "default": false
          },
          "withAiLeadScore": {
            "title": "AI acquisition score (paid add-on)",
            "type": "boolean",
            "description": "Add an AI acquisition-opportunity score (0-100) with tier and rationale for each listing. Paid Apify plans only.",
            "default": false
          },
          "withAiExtract": {
            "title": "AI deal-attribute extraction (paid add-on)",
            "type": "boolean",
            "description": "Add AI-extracted deal attributes (reason for selling, years established, employees, seller financing, real estate, relocatable) from each listing description. Paid Apify plans only.",
            "default": false
          },
          "enrichBrokerWebsite": {
            "title": "Broker website & socials (paid add-on)",
            "type": "boolean",
            "description": "Fetch each broker's public profile to capture their external website, LinkedIn / Facebook / YouTube / Instagram links and license number. Paid Apify plans only.",
            "default": false
          },
          "enrichContacts": {
            "title": "Find contact email & name (paid add-on)",
            "type": "boolean",
            "description": "Optional paid add-on, off by default. For each result without an email, attempt to find a public business contact email and a contact person's name. Billed per attempt, plus an extra charge only when an email is found.",
            "default": false
          },
          "enrichContactsMax": {
            "title": "Max results to enrich (contact email)",
            "minimum": 1,
            "type": "integer",
            "description": "Cap how many results the contact-email add-on tries to enrich, to control add-on cost. Free Apify accounts are capped at 3.",
            "default": 50
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}