# Bank Teller Contact Scraper (`scrapido/bank-teller-contact-scraper`) Actor

💵 Bank Teller Contact Scraper pulls retail banking branch records from Google Maps—full address, ZIP, phone and place ID. 📧 Branch sites mined for emails and socials. 🧑‍💼 Ideal for banking recruiters & staffing agencies.

- **URL**: https://apify.com/scrapido/bank-teller-contact-scraper.md
- **Developed by:** [Scrapido](https://apify.com/scrapido) (community)
- **Categories:** Lead generation, Jobs, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.50 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### Bank Teller Contact Scraper

**Bank Teller Contact Scraper** helps you turn time-consuming manual research into fast, structured lead generation. It is built for bank teller contact extraction, bank teller lead generation, and financial institution staff contacts, giving marketers, analysts, and researchers a practical way to build a banking contact database without digging through pages by hand. 📬

### What is Bank Teller Contact Scraper? 🔍

Bank Teller Contact Scraper is an Apify automation actor that collects business contact details for your chosen search term and location, then returns structured results from publicly available sources. It is designed for bank teller contact scraper use cases, including bank employee contact scraper workflows, bank staff directory research, and financial contacts extraction. Whether you're a sales professional, recruiter, or marketer, this tool helps you find useful public contact information at scale. It combines bank teller contact extraction with automated public web data collection so you can focus on outreach and analysis.

### What Does Bank Teller Contact Scraper Do? ⚙️

This actor takes your search term and location, finds relevant businesses, and then enriches the results with contact information gathered from publicly available sources. It is especially useful for teller email scraping, teller phone number lookup, and bank branch contact data collection. The output is organized into clean dataset records that are ready for review, filtering, and export. 📊

- 🔍 **Searches** for businesses using your chosen search term and location
- 📧 **Extracts** publicly available emails, phone numbers, and social media profiles
- 🌍 **Filters** results by location and supports multiple locations
- 📊 **Structures** output as clean JSON records in the Apify dataset
- 💾 **Saves** results progressively so you can access data as it is collected

### What Would Results from Bank Teller Contact Scraper Look Like? 👀

Here is a realistic example of the kind of dataset record you can expect from a bank teller contact scraper run:

```json
{
  "name": "First National Bank",
  "website": "https://www.firstnationalbank.com",
  "phone": "+1-212-555-0148",
  "full_address": "100 Main St New York NY 10001 US",
  "city": "New York",
  "state": "NY",
  "zip": "10001",
  "country_code": "US",
  "scraped_emails": [
    "tellersupport@firstnationalbank.com"
  ],
  "scraped_phones": [
    "+1-212-555-0148"
  ],
  "scraped_social_media": [
    "https://www.linkedin.com/company/first-national-bank"
  ],
  "emails_found": 1,
  "pages_scraped": 3,
  "avg_rating": 4.6,
  "total_reviews": 128,
  "lat": "40.712776",
  "long": "-74.005974",
  "place_id": "ChIJW-T2Wt7Gt4kRQm0Zq8J7Lxw",
  "scrape_status": "success"
}
```

Export your results from the Apify dataset tab as JSON or CSV for CRM, research, or outreach workflows.

### Capabilities of Bank Teller Contact Scraper 🛠️

| Capability | What It Means for You |
|---|---|
| ✅ **Search-Term Targeting** | Focus on the exact business niche you want, such as bank teller prospecting or financial institution staff contacts |
| ✅ **Multi-Location Support** | Run the actor for one or more locations to build a broader bank branch contact list |
| ✅ **Contact Enrichment** | Collect emails, phone numbers, websites, and social media links when publicly available |
| ✅ **Result Limit Control** | Set a maximum number of businesses to collect, helping you manage run size and cost |
| ✅ **Per-Location Option** | Choose whether the result limit applies per location or across all locations combined |
| ✅ **Proxy Configuration** | Use built-in proxy support for more reliable scraping on larger runs |
| ✅ **Structured Dataset Output** | Receive clean, analysis-ready records for direct use in spreadsheets and downstream tools |
| ✅ **Progressive Saving** | Results are saved during the run, reducing the risk of losing data if a run is interrupted |

### Launch Your First Bank Teller Contact Scraper Task 🚀

#### Required Input Fields

```json
{
  "googleMapsSearchTerm": "Bank Teller",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

| Parameter | Type | Required | Default | Description |
|---|---|---:|---|---|
| `googleMapsSearchTerm` | String | Yes | `Bank Teller` | The business type or niche you want to search for. |
| `googleMapsLocation` | Array | Yes | `["New York"]` | One or more target locations for the search. |
| `maxBusinesses` | Integer | No | `5` | Maximum number of businesses with emails to collect. |
| `scrapeMaxBusinessesPerLocation` | Boolean | No | `false` | If enabled, collects up to the maximum number of businesses for each location separately. |
| `proxyConfiguration` | Object | No | `{"proxy support": true}` | Proxy settings for scraping. Recommended for larger-scale runs. |

#### Required Output Fields

| Field | Type | Description |
|---|---|---|
| `name` | String | Business name of the result. |
| `website` | URL | Website associated with the business. |
| `phone` | String | Main phone number shown for the business. |
| `full_address` | String | Full address assembled from the location data. |
| `city` | String | City from the business location. |
| `state` | String | State or region from the business location. |
| `zip` | String | ZIP or postal code. |
| `country_code` | String | Country code for the business location. |
| `scraped_emails` | List | Publicly available email addresses found for the business. |
| `scraped_phones` | List | Publicly available phone numbers found during enrichment. |
| `scraped_social_media` | List | Publicly available social media links found during enrichment. |
| `emails_found` | Integer | Number of emails found for the business. |
| `pages_scraped` | Integer | Number of pages processed during website scraping. |
| `avg_rating` | Number | Average rating shown for the business. |
| `total_reviews` | Number | Total number of reviews shown for the business. |
| `lat` | String | Latitude value for the business location. |
| `long` | String | Longitude value for the business location. |
| `place_id` | String | Unique place identifier. |
| `scrape_status` | String | Current status of the scrape for that record. |

1. **Open** the actor in Apify Console and review the Input tab.
2. **Enter** your search term and one or more locations.
3. **Set** the result limit and choose whether it applies per location.
4. **Optional:** configure proxy settings for larger or more frequent runs.
5. **Start** the actor and monitor the logs.
6. **Download** the dataset in JSON or CSV when the run finishes.

### Solving Real Problems with Bank Teller Contact Scraper 💼

- 🎯 **Lead Generation** — Build a bank teller lead generation list for outreach and partnership campaigns
- 📣 **Campaign Targeting** — Use bank branch contact data to segment outreach by city or state
- 🤝 **Recruitment Research** — Support financial institution staff contacts research for hiring and sourcing
- 🔬 **Market Analysis** — Create a banking contact database for competitive or industry research
- ⚙️ **Operational Workflows** — Feed contact information scraper results into spreadsheets, CRMs, or enrichment pipelines

### What Sets Bank Teller Contact Scraper Apart? 🏆

- 💡 **Public Data Only** — Focuses on publicly available sources for cleaner and more practical outreach research
- 🔄 **Flexible Limits** — Lets you control total output or apply a limit per location
- 📧 **Support Available** — Reach out at <scrapido.support@gmail.com> for help, feedback, or data-removal requests
- ⚡ **Analysis-Ready Output** — Returns structured fields that are easy to sort, filter, and export

### Search Limits and Capacity 📈

- Set `maxBusinesses` from 1 to 1000
- Use multiple locations to expand bank teller contact extraction coverage
- Enabling `scrapeMaxBusinessesPerLocation` can increase total output when working across several locations
- Built-in proxy support helps with reliability on larger runs
- Results depend on how many relevant businesses have public contact information available

### Is It Legal to Scrape Bank Teller Contact Scraper? ⚖️

This actor works with publicly available data only and does not require private access. As with any public web scraping and bank employee contact scraper workflow, you are responsible for complying with applicable laws, platform terms, and data-handling rules. Use the data ethically and for legitimate business, research, or outreach purposes only. For compliance questions or data-removal requests, contact <scrapido.support@gmail.com>.

### Ending Note ✉️

Stop spending hours on manual bank teller prospecting. The **Bank Teller Contact Scraper** helps you collect public contact details faster, organize them cleanly, and move from research to outreach with less effort. 🚀

### FAQ — Bank Teller Contact Scraper ❓

#### How Does the Bank Teller Contact Scraper Work?

It takes your search term and location, gathers relevant business results, and enriches them with contact details from publicly available sources. The final records are saved to the Apify dataset in a structured format.

#### What Types of Results Can I Target?

You can target businesses that match your search term and location. This is useful for bank staff directory research, financial contacts extraction, and branch teller contact list building.

#### What Kind of Data Does It Return?

The dataset includes business name, website, phone, address, city, state, zip, country\_code, scraped\_emails, scraped\_phones, scraped\_social\_media, emails\_found, pages\_scraped, avg\_rating, total\_reviews, lat, long, place\_id, and scrape\_status.

#### Can I Use It for Bank Employee Contact Scraper Work?

Yes, as long as you are working with publicly available information and using the results responsibly. It is well suited to bank employee contact scraper workflows that focus on outreach and research.

#### Why Use This Instead of Building a Manual Banking Contact Database?

It saves time, reduces repetitive work, and produces a structured banking contact database much faster than manual collection. That makes it useful for marketers, analysts, and researchers who need reliable public contact information.

#### What If I Need Help or Want to Request Data Removal?

You can contact <scrapido.support@gmail.com> for support, feedback, or data-removal requests.

### Support & Feedback

Have a question or found an issue with Bank Teller Contact Scraper?

📧 Email: <scrapido.support@gmail.com>

# Actor input Schema

## `googleMapsSearchTerm` (type: `string`):

Enter the business type or niche for email scraper (e.g., 'coffee shops', 'dentists').

## `googleMapsLocation` (type: `array`):

Target geographic location for the email scraper (e.g., 'Miami, Florida').

## `maxBusinesses` (type: `integer`):

Target number of businesses to find (1-1000). The scraper will stop when this target is reached.

## `scrapeMaxBusinessesPerLocation` (type: `boolean`):

If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.

## `validateEmails` (type: `boolean`):

Run DNS/MX validation and confidence scoring on every email found, and include the results (confidence score, validation status, role-based/catch-all flags) in the output.

## `minRating` (type: `integer`):

Skip businesses rated below this (1-5 stars). Leave at 0 for no filter.

## `minReviews` (type: `integer`):

Skip businesses with fewer than this many Google reviews. Leave at 0 for no filter.

## `requireWebsite` (type: `boolean`):

Skip businesses with no website listed on Google Maps (they can't be crawled for contact info anyway).

## `leadMode` (type: `string`):

Business Contacts (default) returns the business's generic contact info (info@, main phone, socials). Decision-Maker Finder instead looks for a named person with a job title (e.g. "Jane Smith, Owner") on the business's team/about pages — a best-effort heuristic, not guaranteed on every site.

## `proxyConfiguration` (type: `object`):

Proxy settings for scraping. Recommended for large-scale scraping.

## Actor input object example

```json
{
  "googleMapsSearchTerm": "Bank Teller",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "validateEmails": false,
  "minRating": 0,
  "minReviews": 0,
  "requireWebsite": false,
  "leadMode": "Business Contacts",
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "googleMapsSearchTerm": "Bank Teller",
    "googleMapsLocation": [
        "New York"
    ],
    "maxBusinesses": 5,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapido/bank-teller-contact-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "googleMapsSearchTerm": "Bank Teller",
    "googleMapsLocation": ["New York"],
    "maxBusinesses": 5,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("scrapido/bank-teller-contact-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "googleMapsSearchTerm": "Bank Teller",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call scrapido/bank-teller-contact-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapido/bank-teller-contact-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/tPdKxdRODcs0yTymx/builds/Ix8PCcgJJO8ItuwUC/openapi.json
