# Techstars Scraper with Emails (`fatihtahta/techstar-scraper`) Actor

Capture every Techstars startup portfolio companies with rich details. Target the full list or narrow by industry/program. Get clean company names, email, year, tags, links & socials and more. Ideal for lead lists and market mapping.

- **URL**: https://apify.com/fatihtahta/techstar-scraper.md
- **Developed by:** [Fatih Tahta](https://apify.com/fatihtahta) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Stats:** 32 total users, 1 monthly users, 100.0% runs succeeded, 3 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $2.99 / 1,000 results

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?

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

## Techstars Portfolio Scraper

Instantly turn the entire Techstars portfolio (or any filtered slice of it) into clean, structured data for your prospecting, research, or investment scouting pipelines.

📩 This actor is built upon the [ValidatedMails.com](https://validatedmails.com) architecture for email enrichment workflows.

***

### Why you’ll love it

| Benefit | What it means for you |
|---------|-----------------------|
| **All the data in minutes** | Fetch thousands of startups without scrolling manually. |
| **Built-in filters** | Point the actor at any Techstars industry, program, or keyword view. |
| **Rich company profiles** | Name, location, accelerator batch, program, year, tags, website, logo & social links. |
| **No blockers** | Handles cookie pop-ups and lazy loading automatically. |
| **Usage-based pricing** | $4 per 1 000 companies—pay only for what you scrape. |
| **One-click export** | Download as JSON, CSV or feed it straight into Airtable, CRMs, BI tools, etc. |

***

### Quick start

1. **Run the actor** in Apify Console.
2. Accept the default URL (`https://www.techstars.com/portfolio`) or paste any filtered link, e.g.  "https://www.techstars.com/portfolio?industry\_vertical=Fintech"
3. (Optional) Set **Max Companies** if you only need a sample.
4. Hit **Start**. When the run finishes, open the dataset and export.

***

### Input

| Field                  | Type    | Default                                                                    | Required | Notes                                                                                                                     |
| ---------------------- | ------- | -------------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------- |
| **startUrls**          | String  | `https://www.techstars.com/portfolio?is_1b=true&yearMin=2010&yearMax=2020` | ✅        | Any Techstars portfolio or filtered directory page. You can target specific cohorts, industries, years, etc.              |
| **maxCompanies**       | Integer | `99999`                                                                    | ❌        | Maximum number of companies to scrape. Useful for controlling runtime and cost. Minimum: `10`.                            |
| **enrichWithEmail**    | Boolean | `false`                                                                    | ❌        | Automatically find and attach company email addresses at no extra charge. Uses ValidatedMails.com infra.                                                 |
| **includeRiskyEmails** | Boolean | `true`                                                                     | ❌        | Include lower-confidence (“risky”) emails to maximize coverage. Emails are tagged as `verified` or `risky` in the output. |
| **proxyConfiguration** | Object  | `{ useApifyProxy: true }`                                                  | ❌        | Network and proxy settings. Default configuration is optimized for reliability and performance.                           |

***

### Output example (JSON)

```
  {
    "logoUrl": "http://apimg.techstars.com/sf/accounts/logo/Logo_bb62f1035290ee6b0fa48b098.png",
    "companyName": "Zipline",
    "location": "San Francisco, California, United States",
    "portfolioYear": 2011,
    "programName": "Techstars Seattle Accelerator",
    "industryTags": [
      "Mobility tech",
      "Robotics and Drones",
      "Supply chain technology"
    ],
    "websiteUrl": "https://flyzipline.com/",
    "genericEmail": "contact@flyzipline.com",
    "genericEmailStatus": "verified",
    "linkedInUrl": "https://linkedin.com/company/flyzipline",
    "twitterUrl": "https://twitter.com/zipline",
    "crunchbaseUrl": "https://crunchbase.com/organization/zipline-international",
    "description": "Zipline operates the world's largest autonomous on-demand delivery system with the industry's leading instant logistics technology stack."
  },
```

Ideal use-cases
•	Lead generation – build targeted outreach lists of Techstars-backed startups.
•	Market landscaping – map trends by industry, cohort or geography.
•	Investment scouting – fast due-diligence on accelerator alumni.
•	Competitive intel – monitor new entrants and adjacent spaces.

⸻

Tips & tricks
•	Combine this dataset with Crunchbase or LinkedIn enrichments for deeper insights.
•	Schedule the actor weekly to capture new cohorts as soon as they’re listed.
•	Stack it with Apify’s Email Finder actor to automate cold-outreach campaigns.

⸻

Support

Questions, ideas, or hit a snag? Open an issue or ping me in Apify Discord – I respond fast.

Happy scraping! 🚀
Fatih

# Actor input Schema

## `startUrls` (type: `string`):

Start scraping from any Techstars directory page. You can use filtered pages (e.g., only B2B companies from the W24 batch) to target specific company profiles.

## `maxCompanies` (type: `integer`):

Set a limit on how many companies you want to find. This is useful for controlling the cost and duration of your scrape.

## `enrichWithEmail` (type: `boolean`):

Enrich the data by finding Company emails at no extra charrge.

## `includeRiskyEmails` (type: `boolean`):

Get potential emails that have a slightly lower chance of being correct. The results will be tagged as 'verified' or 'risky' so you can easily filter them later.

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

Manages the network connections used for scraping. The default setting is optimized for reliability and performance.

## Actor input object example

```json
{
  "startUrls": "https://www.techstars.com/portfolio?is_1b=true&yearMin=2010&yearMax=2020",
  "maxCompanies": 99999,
  "enrichWithEmail": false,
  "includeRiskyEmails": true,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("fatihtahta/techstar-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 = {}

# Run the Actor and wait for it to finish
run = client.actor("fatihtahta/techstar-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 '{}' |
apify call fatihtahta/techstar-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,fatihtahta/techstar-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/LjfU2YO4b11RszmUM/builds/HTmKG0Rf019UgoSpm/openapi.json
