# Tesla Supercharger Location List Scraper (`rainminer/tesla-supercharger-finder-scraper`) Actor

Find Tesla Supercharger sites on the public Find Us directory. Export station names, street addresses, cities, GPS coordinates, opening status, and whether other electric vehicles can charge. Start from the worldwide list or a single country. No Tesla account or login. Schedule repeat runs on Apify.

- **URL**: https://apify.com/rainminer/tesla-supercharger-finder-scraper.md
- **Developed by:** [rainminer](https://apify.com/rainminer) (community)
- **Categories:** Travel, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.49 / 1,000 supercharger saveds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

![Tesla Superchargers](https://digitalassets.tesla.com/tesla-contents/image/upload/f_auto,q_auto:best/supercharger_family_social)

### What does Tesla Supercharger Finder do?

**Tesla Supercharger Finder** collects public **Tesla Supercharger** sites from the [Tesla Find Us directory](https://www.tesla.com/findus/list). Start from the worldwide directory or paste one country list, such as the United States or Iceland, and export **site name, address, coordinates, status, and non-Tesla access** without writing code.

It reads the public country lists on Tesla's website. It does not sign in to a Tesla account, and it does not report live stall availability or the price per kilowatt-hour.

Run it on the **Apify platform** to schedule refreshes, download JSON, CSV, Excel, or HTML, call the results through the API, and monitor failed runs.

### Why use Tesla Supercharger Finder?

- **Road trips** — Build a country or city list before a long drive.
- **Non-Tesla EV travel** — Keep only sites Tesla marks as open to other electric vehicles.
- **Fleet routing** — Feed coordinates into route and charging plans.
- **Site selection** — See which cities already have a Supercharger.
- **Coming-soon watch** — Track stations Tesla still lists as not open.
- **Coverage reports** — Compare how many sites a country publishes.
- **App backends** — Refresh a map without a Tesla account.
- **Journalism and research** — Export a dated snapshot of the public network.
- **NACS access checks** — Read Tesla's public charging-accessibility label.
- **City search** — Match a name such as Austin or Reykjavík.
- **Scheduled monitoring** — Run the same country list every week on Apify.
- **Sheets and Slack** — Download JSON or CSV, or send results through Apify integrations.

### What data can Tesla Supercharger Finder extract?

| Field | Type | Description |
| --- | --- | --- |
| `id` | string | Stable Tesla location id |
| `name` | string | Public site name from the Find Us list |
| `address` | string | Formatted street address |
| `city` | string | City |
| `state` | string | State, province, or region when Tesla publishes one |
| `postalCode` | string | Postal code |
| `country` | string | Country name |
| `latitude`, `longitude` | number | Site coordinates |
| `status` | string | Opening status, such as Open |
| `openToNonTesla` | boolean | Whether Tesla lists the site for other EVs |
| `chargingAccessibility` | string | Tesla's public access label, when present |
| `openingDate` | string | Opening date when the list includes one |
| `roadsideAssistancePhone` | string | Public roadside assistance number shown on the list |
| `url` | string | Public Find Us page for the site |

The public list does not include live free-stall counts, charger power, or time-of-use energy prices. Those fields are left out rather than guessed.

### How to scrape Tesla Superchargers

1. Open [Tesla Find Us](https://www.tesla.com/findus/list) and copy the directory URL, or open a country Supercharger list such as `https://www.tesla.com/findus/list/superchargers/Iceland`.
2. Paste that URL into **Start URLs**.
3. Set **Maximum items**. The limit applies to each start URL, not to the whole run combined.
4. Optional: add country names, a search phrase, an open-only filter, or non-Tesla access only.
5. Keep the **unblocker** proxy group enabled, then run the Actor.
6. Download the dataset as JSON, CSV, Excel, or HTML.

Country names must match the directory label, including spaces. Use `United States`, not `US`, and `China Mainland` for mainland China.

### How much will it cost to scrape Tesla Superchargers?

Each saved Supercharger is one result. On a pay-per-result plan you pay for saved sites, not for country pages that you skip after the limit is reached.

Tesla rejects ordinary datacenter and residential connections, so the default proxy is Apify's **unblocker** group. That proxy traffic is billed by Apify in addition to Actor compute. A country list is one page, even when it contains hundreds of sites, and the directory walks country pages only until `maxItems` is filled.

Keep `maxItems` at 5 for a first run. Raise it when you want a full country or the worldwide directory. A worldwide run visits one country list at a time, so leave a longer timeout if you set `maxItems` in the thousands.

### Input

See the **Input** tab for every field.

| Field | What it does |
| --- | --- |
| `startUrls` | Find Us directory or a `/findus/list/superchargers/{country}` URL |
| `maxItems` | Sites to save per start URL. Default: 5 |
| `countries` | Optional country names used with the directory |
| `query` | Case-insensitive match on name, city, state, and address |
| `status` | `all`, `open`, or `coming_soon` |
| `openToNonTeslaOnly` | Keep sites Tesla marks as open to other EVs |
| `proxyConfiguration` | Use Apify Proxy with the unblocker group |

Example: Iceland only, first five sites.

```json
{
  "startUrls": [
    {
      "url": "https://www.tesla.com/findus/list/superchargers/Iceland"
    }
  ],
  "maxItems": 5,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["UNBLOCKER"]
  }
}
```

Example: open US sites whose name or city mentions Austin, from the directory.

```json
{
  "startUrls": [
    {
      "url": "https://www.tesla.com/findus/list"
    }
  ],
  "countries": ["United States"],
  "query": "Austin",
  "status": "open",
  "maxItems": 20,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["UNBLOCKER"]
  }
}
```

### Output

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

```json
{
  "id": "14680",
  "locationUuid": "2489018",
  "name": "Fossvogur, Iceland",
  "streetAddress": "100 Kringlumýrarbraut",
  "address": "Kringlumýrarbraut 100, 105 Reykjavík",
  "city": "Reykjavík",
  "state": "Reykjavíkurborg",
  "postalCode": "105",
  "country": "Iceland",
  "countryCode": "IS",
  "latitude": 64.117617,
  "longitude": -21.89959,
  "status": "Open",
  "siteStatus": "open",
  "accessType": "Public",
  "ownershipType": "Tesla Owned",
  "openToNonTesla": true,
  "chargingAccessibility": "All Vehicles (Production)",
  "openingDate": "2020-07-27",
  "roadsideAssistancePhone": "539 5037",
  "url": "https://www.tesla.com/findus/location/supercharger/fossvogursupercharger",
  "listUrl": "https://www.tesla.com/findus/list/superchargers/Iceland"
}
```

### Tips

- Paste a country list URL when you only need one country. That skips the rest of the directory.
- Use `countries` when the start URL is `https://www.tesla.com/findus/list` and you want a few countries in directory order.
- `maxItems` stops the directory after enough matching sites are saved, so a small limit does not download every country.
- If a run returns an access-denied error, confirm **Use Apify Proxy** is on and the proxy group is **UNBLOCKER**.

### FAQ, disclaimers, and support

#### Does this use a Tesla account?

No. The Actor only reads public Find Us pages. Do not add a Tesla login, password, or session cookie.

#### Can I get live stall counts?

No. The public country list publishes the site record, not how many stalls are free right now.

#### Which URL should I start with?

Use `https://www.tesla.com/findus/list` for the directory, or a country URL such as `https://www.tesla.com/findus/list/superchargers/United+States`.

#### Is scraping Tesla Find Us allowed?

Our Actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our Actors, when used for ethical purposes by Apify users, are safe. However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

Supercharger rows are public places. The roadside number is the public assistance number printed on the list, not a private contact.

Questions and bugs belong on the **Issues** tab. For programmatic runs, open the **API** tab in Apify Console.

### Image Credit

Image credit: [tesla.com](https://www.tesla.com/findus/list)

# Actor input Schema

## `startUrls` (type: `array`):

Tesla Find Us directory (https://www.tesla.com/findus/list) or a country Supercharger list such as https://www.tesla.com/findus/list/superchargers/Iceland.

## `maxItems` (type: `integer`):

Maximum number of Supercharger sites to save per start URL.

## `countries` (type: `array`):

Optional country names to keep when the start URL is the Find Us directory. Examples: Iceland, United States, Norway. Leave empty to follow the directory order.

## `query` (type: `string`):

Optional text matched against the site name, city, state, and address.

## `status` (type: `string`):

Which sites to keep.

## `openToNonTeslaOnly` (type: `boolean`):

Keep only Superchargers that Tesla lists as open to other electric vehicles.

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

Tesla rejects datacenter and residential proxies. Keep the Apify Proxy unblocker group enabled.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.tesla.com/findus/list/superchargers/Iceland"
    }
  ],
  "maxItems": 5,
  "countries": [],
  "status": "all",
  "openToNonTeslaOnly": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "UNBLOCKER"
    ]
  }
}
```

# Actor output Schema

## `overview` (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 = {
    "startUrls": [
        {
            "url": "https://www.tesla.com/findus/list/superchargers/Iceland"
        }
    ],
    "countries": [],
    "query": "",
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "UNBLOCKER"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("rainminer/tesla-supercharger-finder-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 = {
    "startUrls": [{ "url": "https://www.tesla.com/findus/list/superchargers/Iceland" }],
    "countries": [],
    "query": "",
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["UNBLOCKER"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("rainminer/tesla-supercharger-finder-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 '{
  "startUrls": [
    {
      "url": "https://www.tesla.com/findus/list/superchargers/Iceland"
    }
  ],
  "countries": [],
  "query": "",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "UNBLOCKER"
    ]
  }
}' |
apify call rainminer/tesla-supercharger-finder-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,rainminer/tesla-supercharger-finder-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/nubhgzNXGEwq8thzX/builds/8nfImYj0kkuhXBn39/openapi.json
