{
  "openapi": "3.0.1",
  "info": {
    "title": "Local Business Leads Finder - Emails, Phones (OSM)",
    "description": "Find local businesses by category and city: name, address, phone, website, company emails from their websites (MX-checked), social profiles and coordinates. OpenStreetMap data, no login. $2 per 1000 businesses.",
    "version": "0.1",
    "x-build-id": "2TPWobPWFDeE1ANlb"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/martin10291~local-business-leads-osm/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-martin10291-local-business-leads-osm",
        "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/martin10291~local-business-leads-osm/runs": {
      "post": {
        "operationId": "runs-sync-martin10291-local-business-leads-osm",
        "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/martin10291~local-business-leads-osm/run-sync": {
      "post": {
        "operationId": "run-sync-martin10291-local-business-leads-osm",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "locations"
        ],
        "properties": {
          "categories": {
            "title": "Business categories",
            "type": "array",
            "description": "What kind of businesses to find. Pick one or more.",
            "items": {
              "type": "string",
              "enum": [
                "restaurants",
                "cafes",
                "bars",
                "hotels",
                "dentists",
                "doctors_clinics",
                "pharmacies",
                "veterinarians",
                "lawyers",
                "accountants",
                "real_estate",
                "insurance",
                "it_companies",
                "marketing_agencies",
                "architects",
                "travel_agencies",
                "hairdressers",
                "beauty_salons",
                "gyms",
                "car_repair",
                "car_dealers",
                "plumbers",
                "electricians",
                "builders",
                "florists",
                "bakeries",
                "supermarkets",
                "clothing_stores",
                "furniture_stores",
                "hardware_stores",
                "electronics_stores",
                "opticians",
                "photographers",
                "schools_courses",
                "kindergartens",
                "coworking",
                "event_venues",
                "pet_shops"
              ],
              "enumTitles": [
                "Restaurants & fast food",
                "Cafes",
                "Bars, pubs & clubs",
                "Hotels & guest houses",
                "Dentists",
                "Doctors & clinics",
                "Pharmacies",
                "Veterinarians",
                "Lawyers & notaries",
                "Accountants & tax advisors",
                "Real estate agencies",
                "Insurance agencies",
                "IT & software companies",
                "Marketing & advertising agencies",
                "Architects",
                "Travel agencies",
                "Hairdressers & barbers",
                "Beauty salons, spas & massage",
                "Gyms & fitness centres",
                "Car repair & tyres",
                "Car & motorcycle dealers",
                "Plumbers & HVAC",
                "Electricians",
                "Builders, roofers & construction",
                "Florists & garden centres",
                "Bakeries & pastry shops",
                "Supermarkets & convenience stores",
                "Clothing & shoe stores",
                "Furniture & interior stores",
                "Hardware & DIY stores",
                "Electronics & phone stores",
                "Opticians",
                "Photographers",
                "Language, driving & music schools",
                "Kindergartens & childcare",
                "Coworking spaces",
                "Event & conference venues",
                "Pet shops & grooming"
              ]
            },
            "default": [
              "dentists"
            ]
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Cities, districts, regions or countries, e.g. \"Austin, Texas\", \"Manchester, UK\", \"Plovdiv, Bulgaria\". You can also use \"latitude,longitude,radiusKm\".",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Maximum number of businesses to save across all locations. You only pay for saved results.",
            "default": 100
          },
          "scanWebsites": {
            "title": "Find emails on business websites",
            "type": "boolean",
            "description": "Visit each business website (home page and contact/about pages) to collect public company emails and social profiles.",
            "default": true
          },
          "onlyWithEmail": {
            "title": "Only businesses with an email",
            "type": "boolean",
            "description": "Save only businesses where an email was found. Businesses without an email are skipped and not charged.",
            "default": false
          },
          "onlyNewBusinesses": {
            "title": "Only new businesses (for schedules)",
            "type": "boolean",
            "description": "Skip businesses returned by earlier runs with the same categories and locations. Schedule the actor daily or weekly to get, and pay for, only businesses that are new on the map.",
            "default": false
          },
          "onlyWithWebsite": {
            "title": "Only businesses with a website",
            "type": "boolean",
            "description": "Skip businesses that have no website in OpenStreetMap.",
            "default": false
          },
          "checkMx": {
            "title": "Check email domains (MX)",
            "type": "boolean",
            "description": "Check that the email domain has a mail server. The result is in emailMxValid.",
            "default": true
          },
          "includePersonalEmails": {
            "title": "Include personal-looking emails",
            "type": "boolean",
            "description": "By default only company addresses (info@, office@, sales@, ...) are returned. Turn on to also include addresses that look like a person's name (firstname.lastname@).",
            "default": false
          },
          "customOsmTags": {
            "title": "Custom OpenStreetMap tags (advanced)",
            "type": "array",
            "description": "Extra OpenStreetMap tags, one per line, like shop=bicycle or craft=brewery or office=consulting|financial. See wiki.openstreetmap.org/wiki/Map_features.",
            "items": {
              "type": "string"
            }
          },
          "maxPagesPerWebsite": {
            "title": "Pages per website",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Home page plus up to this many contact/about pages minus one.",
            "default": 4
          },
          "radiusKm": {
            "title": "Radius for point locations (km)",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Used when a location resolves to a point (or for latitude,longitude input) instead of an area.",
            "default": 10
          },
          "maxConcurrency": {
            "title": "Websites in parallel",
            "minimum": 1,
            "maximum": 40,
            "type": "integer",
            "description": "How many websites to scan at the same time.",
            "default": 15
          },
          "proxyConfiguration": {
            "title": "Proxy for websites",
            "type": "object",
            "description": "Optional. Business websites rarely block, so no proxy is used by default.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}