{
  "openapi": "3.0.1",
  "info": {
    "title": "B2B Lead Scraper - Emails, Phones & Contacts",
    "description": "Scrape B2B emails, phones & decision-makers by sector + country. Apollo alternative, no login, export verified leads to CSV/JSON. Email-pattern finder.",
    "version": "0.0",
    "x-build-id": "LdqOmsKes329iLUCz"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/logiover~b2b-lead-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-logiover-b2b-lead-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/logiover~b2b-lead-scraper/runs": {
      "post": {
        "operationId": "runs-sync-logiover-b2b-lead-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/logiover~b2b-lead-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-logiover-b2b-lead-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": {
          "sector": {
            "title": "Sector / Industry",
            "enum": [
              "marketing agencies",
              "law firms",
              "dentists",
              "doctors",
              "accountants",
              "tax advisors",
              "insurance agencies",
              "real estate agencies",
              "architects",
              "consulting firms",
              "software companies",
              "financial advisors",
              "restaurants",
              "cafes",
              "bars",
              "hotels",
              "plumbers",
              "electricians",
              "carpenters",
              "hair salons",
              "gyms",
              "pharmacy",
              "veterinary clinics",
              "car repair garages",
              "car dealerships",
              "bakery",
              "travel agency",
              "driving schools"
            ],
            "type": "string",
            "description": "What kind of business to find. Pick a sector for the best OpenStreetMap match. Need something not listed? Leave this and use 'Extra search queries' or 'Extra start URLs' below for any custom niche.",
            "default": "marketing agencies"
          },
          "country": {
            "title": "Country",
            "enum": [
              "United States",
              "United Kingdom",
              "Canada",
              "Australia",
              "New Zealand",
              "Ireland",
              "Germany",
              "France",
              "Spain",
              "Italy",
              "Netherlands",
              "Belgium",
              "Austria",
              "Switzerland",
              "Poland",
              "Sweden",
              "Norway",
              "Denmark",
              "Finland",
              "Portugal",
              "Greece",
              "Czech Republic",
              "Romania",
              "Hungary",
              "Turkey",
              "India",
              "Japan",
              "South Korea",
              "Singapore",
              "United Arab Emirates",
              "Saudi Arabia",
              "South Africa",
              "Mexico",
              "Brazil",
              "Argentina"
            ],
            "type": "string",
            "description": "Country to target. Used for localized search and to fan out across major cities for volume. Pick from the supported list (these have OpenStreetMap country coverage).",
            "default": "United Kingdom"
          },
          "cities": {
            "title": "Cities (optional)",
            "type": "array",
            "description": "Limit/expand the search to specific cities. If empty, major cities of the country are used automatically for volume.",
            "items": {
              "type": "string"
            }
          },
          "maxLeads": {
            "title": "Max leads (companies)",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of distinct companies to return.",
            "default": 200
          },
          "resultsPerQuery": {
            "title": "Results per search query",
            "minimum": 5,
            "maximum": 50,
            "type": "integer",
            "description": "How many search results to take per query before moving on. Higher = more volume per city.",
            "default": 20
          },
          "maxPagesPerSite": {
            "title": "Max pages per website",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Home page + contact/about/team pages to crawl per company. Keep low for speed & cost.",
            "default": 4
          },
          "maxProfilesPerSite": {
            "title": "Max people-profile pages per website",
            "minimum": 0,
            "maximum": 50,
            "type": "integer",
            "description": "From a team/attorneys listing page, how many individual people-profile pages to crawl (where names + personal emails live). Higher = more person-level leads, more cost.",
            "default": 8
          },
          "discovery": {
            "title": "Discovery source",
            "enum": [
              "osm",
              "search"
            ],
            "type": "string",
            "description": "How to find companies. 'osm' = OpenStreetMap/Overpass (recommended: thousands of results, never blocked, free). 'search' = scrape search engines (flexible but rate-limited).",
            "default": "osm"
          },
          "requireEmail": {
            "title": "Only return companies with at least one email",
            "type": "boolean",
            "description": "If ON, drops companies with no email. Default OFF — keep every lead (name, phone, address, website) even without an email, for maximum volume.",
            "default": false
          },
          "guessEmails": {
            "title": "Guess personal emails from name + pattern",
            "type": "boolean",
            "description": "If ON, builds likely personal emails (e.g. first.last@company.com) for named people without a listed email, using the company's detected pattern. Higher reach but lower accuracy — results are labeled 'guessed'. Default OFF for precision.",
            "default": false
          },
          "verifyEmails": {
            "title": "Verify emails (MX + syntax)",
            "type": "boolean",
            "description": "Check email syntax and that the domain accepts mail (MX records). Fast and free.",
            "default": true
          },
          "smtpCheck": {
            "title": "Deep SMTP mailbox check (best-effort)",
            "type": "boolean",
            "description": "Try a live SMTP RCPT check per email. NOTE: outbound port 25 is usually blocked on cloud platforms, so this often returns 'unknown'. Leave off unless you run with a custom setup.",
            "default": false
          },
          "extraQueries": {
            "title": "Extra search queries (optional)",
            "type": "array",
            "description": "Add your own raw search queries for any custom niche, e.g. 'SaaS startups Berlin', to supplement or replace sector+country. Great for sectors not in the dropdown.",
            "items": {
              "type": "string"
            }
          },
          "extraStartUrls": {
            "title": "Extra start URLs (optional)",
            "type": "array",
            "description": "Skip discovery and crawl these company websites directly (enrichment mode). Accepts domains or full URLs.",
            "items": {
              "type": "string"
            }
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Proxy settings. Apify Proxy recommended to avoid search-engine rate limits.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}