# Unity Asset Store Email Scraper (`leads-scraper/unity-asset-store-email-scraper`) Actor

Unity Asset Store Email Scraper SD - Unity Asset Store Email Scraper is a lead generation tool that extracts leads with public contact emails, account names and profile URLs from Unity Asset Store results by keyword, location and email domain - Unity Asset Store email extractor.

- **URL**: https://apify.com/leads-scraper/unity-asset-store-email-scraper.md
- **Developed by:** [Leads Scraper](https://apify.com/leads-scraper) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.49 / 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.
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

### Unity Asset Store Email Scraper - extract publisher contact emails from Unity Asset Store results

The **Unity Asset Store Email Scraper** is an Apify Actor that collects publicly indexed contact emails tied to Unity Asset Store publishers and package listings. You supply keywords, optional location and the email domains you care about, and it returns a clean dataset of game-development leads.

Asset publishers put a support address almost everywhere: on the publisher profile, in the "Support" block of a package page, in documentation links and in changelog notes. When Google indexes those pages, the Unity Asset Store Email Scraper can find the address.

This is the tool people mean when they search for a Unity asset publisher contact, a Unity Asset Store email extractor, or a way to build a game developer lead generation list without opening a hundred package pages by hand.

#### What the Unity Asset Store Email Scraper actually reads

The Unity Asset Store Email Scraper reads **only what Google has already indexed** on `assetstore.unity.com`. It builds Google queries with the `site:` operator, fetches result pages through the Apify GOOGLE_SERP proxy, and pulls emails out of titles and snippets.

It does **not** log into Unity, call any Unity API, or open the Asset Store website. There is no browser, no JavaScript rendering, no authentication and no cookies anywhere in the pipeline.

That distinction matters on this platform. A support address written into a package's description is reachable here only because Google indexed that description, not because the Actor crawled the store's catalogue.

#### Who the Unity Asset Store Email Scraper is built for

Game studios sourcing tools vendors, middleware companies looking for integration partners, publishers scouting asset creators, and agencies doing game-dev lead generation all want the same thing: a repeatable way to turn a category into contactable publishers.

The Unity Asset Store Email Scraper turns "shader publisher, Gmail addresses" into rows you can filter, dedupe and export as CSV, JSON or Excel, or pull straight from the Apify API.

***

### Key features of the Unity Asset Store Email Scraper

| Feature | What it does |
|---|---|
| Google `site:` dorking | Queries `assetstore.unity.com` through the Apify GOOGLE_SERP proxy |
| Query expansion | Runs base, quoted and `intitle:` variants plus one variant per query modifier; base queries run first |
| Domain-filtered extraction | Keeps only emails ending in your `customDomains` values |
| Global deduplication | One row per unique email across every query and every page of the run |
| Obfuscation handling | Understands `name [at] domain [dot] com`, `name (at) domain`, `name @ domain.com`, `domain .com`, zero-width characters and the full-width `＠` |
| Junk filter | Rejects placeholders such as `email@`, `yourname@`, `test@`, `xxx@` and single-character locals |
| Boundary-correct matching | `@gmail.com` never matches inside `@gmail.company` or `@gmail.com.br` |
| Soft-wrap repair | Drops a hit that is only the tail of another email in the same result block |
| Structural parsing | Locates the `<h3>` title then the smallest surrounding block, instead of relying on Google's CSS class names |
| Publisher path awareness | Knows the store's `/publishers/` and `/packages/` path shapes when resolving a handle |
| Whole-page fallback | If Google's markup changes, the run degrades to "emails without account details" rather than "no emails" |
| Block detection | CAPTCHA, "unusual traffic" and consent pages are detected and retried, not counted as empty |
| Retries and backoff | Up to 3 attempts per page with exponential backoff and a fresh proxy session per request |
| Requeue of failures | Blocked or failed queries are re-queued once at the end of the run |
| Async concurrency | An `asyncio` worker pool with a shared stop signal on `maxEmails` |
| Resumable state | Progress is stored in the key-value store keyed by a hash of the input, with throttled saves plus saves on `PERSIST_STATE`, `MIGRATING` and `ABORTING` |
| Streaming output | Every lead is pushed to the dataset immediately, so partial results survive an abort |
| Run summary | Logs pages fetched, blocked pages, retries and emails per page |

***

### How the Unity Asset Store Email Scraper works

The pipeline behind the Unity Asset Store Email Scraper is deliberately simple, which is why it is quick to run and hard to break.

1. The Unity Asset Store Email Scraper reads your input: keywords, location, email domains and limits.
2. It builds Google queries with the `site:` operator, for example `site:assetstore.unity.com asset publisher "@gmail.com"`.
3. It fetches Google result pages asynchronously through the Apify GOOGLE_SERP proxy using `aiohttp`.
4. It parses each result block structurally, finding the `<h3>` title and the smallest block around it.
5. It extracts emails from the block text with a domain-filtered regex.
6. It deduplicates globally and pushes each lead straight to the Apify dataset.

#### Why query expansion matters for Unity Asset Store lead generation

Google caps a single query at roughly 300 results, so one query has a hard ceiling no matter how many pages you allow.

Query expansion is how the Unity Asset Store Email Scraper gets past that ceiling: every keyword is combined with every email domain in several phrasings, and each variant carries its own result budget.

The default `queryModifiers` here are `email`, `contact`, `support`, `developer` and `publisher`, because those are the words that sit next to an address on a store listing or a publisher profile.

#### What the Unity Asset Store Email Scraper does not do

It does not log into the Asset Store, use a Unity API, render JavaScript, read purchase or review data, or reach anything that is not already public in Google's index.

It is an independent Apify Actor and is not affiliated with, supported by or endorsed by Unity Technologies.

***

### Unity Asset Store Email Scraper input fields

Every field the Unity Asset Store Email Scraper accepts is optional except `keywords`. Defaults are exactly those shipped in the Actor's input schema.

| Field | Type | Default | Meaning |
|---|---|---|---|
| `keywords` | array (required) | `["asset publisher", "game developer"]` | Search terms describing the Unity Asset Store accounts you want (niche, category, role) |
| `location` | string | `""` | Optional location phrase added to every query |
| `customDomains` | array | `["@gmail.com", "@yahoo.com"]` | Only emails on these domains are kept; the leading `@` is optional |
| `maxEmails` | integer 1-10000 | `20` | Stop after this many unique emails |
| `countryCode` | string | `""` | Two-letter country for the search proxy (US, GB, DE...) |
| `expandQueries` | boolean | `true` | Search each keyword x domain pair in several phrasings |
| `queryModifiers` | array | `["email", "contact", "support", "developer", "publisher"]` | Extra words combined with each keyword when expansion is on |
| `maxPagesPerQuery` | integer 1-50 | `30` | Page cap per query |
| `maxConcurrency` | integer 1-20 | `5` | Parallel queries |

#### Example Unity Asset Store Email Scraper input

```json
{
  "keywords": ["shader publisher", "character asset publisher", "editor tools developer"],
  "location": "",
  "customDomains": ["@gmail.com", "@outlook.com"],
  "maxEmails": 400,
  "countryCode": "US",
  "expandQueries": true,
  "queryModifiers": ["email", "contact", "support", "developer", "publisher"],
  "maxPagesPerQuery": 30,
  "maxConcurrency": 5
}
```

#### Tuning the Unity Asset Store Email Scraper for better yield

Category language beats job titles when you feed the Unity Asset Store Email Scraper. `vfx pack publisher`, `URP shader`, `editor extension` and `character controller` mirror how listings are actually written, so they outperform a generic `developer`.

Add more email domains before you add more keywords. Each extra domain multiplies the number of distinct queries, and each query brings its own result budget.

Leave `expandQueries` on. Switching it off gives one query per keyword and domain, which is faster but caps out quickly.

***

### Unity Asset Store Email Scraper output fields

Every dataset item the Unity Asset Store Email Scraper produces carries all 14 fields below. Fields are never dropped; they are empty or `null` when Google did not expose the value.

| Field | Meaning |
|---|---|
| `network` | Platform name |
| `keyword` | The keyword that produced the lead |
| `query` | The exact Google query used |
| `title` | Raw result title |
| `accountName` | Account label Google prints (publisher handle or display name) |
| `fullName` | Display name parsed from a profile-style title; empty for package listing titles |
| `username` | URL-safe publisher handle when one is exposed; otherwise `null` |
| `profileUrl` | Canonical `https://assetstore.unity.com/publishers/{username}` URL when a handle is known; otherwise empty |
| `url` | Direct platform link when exposed, else the profile URL |
| `description` | Bio or listing snippet, cleaned of labels and engagement counters |
| `email` | Lower-cased email address |
| `emailDomain` | The matched domain, for example `@gmail.com` |
| `possiblyTruncated` | `true` when Google's snippet ellipsis touched the email - verify before sending |
| `foundAt` | ISO 8601 UTC timestamp |

#### Example Unity Asset Store Email Scraper output

```json
[
  {
    "network": "Unity Asset Store",
    "keyword": "shader publisher",
    "query": "site:assetstore.unity.com shader publisher \"@gmail.com\"",
    "title": "Kestrel Shaders · Publisher Profile | Unity Asset Store",
    "accountName": "kestrel-shaders",
    "fullName": "Kestrel Shaders",
    "username": "kestrel-shaders",
    "profileUrl": "https://assetstore.unity.com/publishers/kestrel-shaders",
    "url": "https://assetstore.unity.com/publishers/kestrel-shaders",
    "description": "URP and HDRP shader packs for stylised games. Support: kestrel.shaders@gmail.com",
    "email": "kestrel.shaders@gmail.com",
    "emailDomain": "@gmail.com",
    "possiblyTruncated": false,
    "foundAt": "2026-08-31T09:14:22.481Z"
  },
  {
    "network": "Unity Asset Store",
    "keyword": "editor tools developer",
    "query": "site:assetstore.unity.com intitle:\"editor tools\" support \"@outlook.com\"",
    "title": "Hierarchy Pro - Editor Tools | Unity Asset Store",
    "accountName": "Nordlight Tools",
    "fullName": "",
    "username": null,
    "profileUrl": "",
    "url": "https://assetstore.unity.com/packages/tools/utilities/hierarchy-pro-201455",
    "description": "Editor extension for large scenes. Documentation and support requests to nordlight.tools@outlook.com ...",
    "email": "nordlight.tools@outlook.com",
    "emailDomain": "@outlook.com",
    "possiblyTruncated": true,
    "foundAt": "2026-08-31T09:14:29.113Z"
  },
  {
    "network": "Unity Asset Store",
    "keyword": "character asset publisher",
    "query": "site:assetstore.unity.com character asset publisher contact \"@gmail.com\"",
    "title": "Lowpoly Forge · Publisher Profile | Unity Asset Store",
    "accountName": "lowpoly-forge",
    "fullName": "Lowpoly Forge",
    "username": "lowpoly-forge",
    "profileUrl": "https://assetstore.unity.com/publishers/lowpoly-forge",
    "url": "https://assetstore.unity.com/publishers/lowpoly-forge",
    "description": "Stylised character and prop packs. Custom work enquiries: lowpoly.forge.studio@gmail.com",
    "email": "lowpoly.forge.studio@gmail.com",
    "emailDomain": "@gmail.com",
    "possiblyTruncated": false,
    "foundAt": "2026-08-31T09:15:03.902Z"
  }
]
```

The second row is the honest case for the Unity Asset Store Email Scraper: a package listing carried a real support address but no publisher handle, so `username` is `null` and `profileUrl` is empty. That is a Google limitation, not a bug.

***

### Use cases for the Unity Asset Store Email Scraper

| Use case | How the Unity Asset Store Email Scraper helps |
|---|---|
| Game developer lead generation | Build a list of asset publishers by category, with a profile URL to review before you write |
| Middleware and tools sales | Reach studios and publishers who already sell into the Unity ecosystem |
| Asset publisher recruitment | Find creators to bring onto your own store, bundle or subscription |
| Bundle and sale curation | Assemble a shortlist of publishers for a themed bundle and contact them in one pass |
| Porting and outsourcing services | Contact publishers whose packs suggest a need for platform ports or art production |
| Partnership and integration research | Identify tool vendors adjacent to your SDK and the address they publish for support |
| Ecosystem and market research | Measure with the Unity Asset Store Email Scraper how many publishers in a category expose a public contact channel |
| Localisation and QA outreach | Offer services to publishers shipping text-heavy or systems-heavy packages |

#### Game studio and publisher outreach

Studios use the Unity Asset Store Email Scraper because a publisher's catalogue tells you what they can actually build. A keyword tied to a category gives you evidence and a contact route in the same row.

Read `description` and open `profileUrl` before you write. The Actor supplies the address; qualifying the publisher is still your job.

#### Cross-engine and cross-ecosystem research

Asset creators rarely stay on one storefront. Teams pair the Unity Asset Store Email Scraper with the [Unreal Engine Marketplace Email Scraper](https://apify.com/leads-scraper/unreal-engine-marketplace-email-scraper) and the [Figma Community Email Scraper](https://apify.com/neuro-scraper/figma-community-email-scraper) to cover engine assets and design assets in a single campaign.

***

### Expected results from the Unity Asset Store Email Scraper

In live test runs against Google, roughly **6 out of 10 parsed Unity Asset Store results carried an account identity** - a publisher handle, a display name, or both.

Publisher profile URLs resolved about half the time. The store mixes publisher pages and package pages in Google's index, and package titles often name the product rather than the seller.

The remaining rows are still usable leads: they carry `email`, `emailDomain`, `url`, `description` and `query`, just without a resolved handle. Volume always depends on your keywords, domains and location - no yield is guaranteed.

***

### Limitations of the Unity Asset Store Email Scraper

Read this before planning a campaign around Unity Asset Store Email Scraper output.

- **Publicly indexed emails only.** The Unity Asset Store Email Scraper finds an address only when it is already visible in Google's index. Contact details behind the store's message forms, or on pages Google has not indexed, are out of reach.
- **Google's ~300-result cap.** A single query returns roughly 300 results maximum, which is exactly why `expandQueries` exists and why turning it off reduces volume.
- **`possiblyTruncated`.** When this is `true`, Google's snippet ellipsis touched the email and it may be cut off. Verify those rows before sending anything.
- **`username` and `profileUrl` can be empty.** They are populated only when the store exposes a publisher handle in the result. Package listing titles frequently show the product name instead, leaving `accountName` filled but `username` `null` and `profileUrl` empty.
- **Apify GOOGLE_SERP proxy required.** The Actor cannot run without Apify proxy credentials.
- **Free plan cap.** Free Apify plans are limited to 100 emails per run. Paid plans are uncapped.
- **Variable results.** Output depends on keywords, domains, location and Google's index, which changes over time. Two runs a month apart will not be identical.

***

### Responsible use

Publisher addresses on the Asset Store are published for support and business correspondence - bug reports, licensing questions, integration requests. Treat them that way.

If you contact people in the EU or UK, GDPR applies: have a lawful basis, identify yourself, say where you found the address, and honour opt-outs immediately. Respect Unity's community norms and any stated contact preference on a publisher profile.

A short, specific message about a publisher's actual package will always outperform a bulk send to a whole category.

***

### Unity Asset Store Email Scraper FAQ

#### Does the Unity Asset Store Email Scraper use a Unity API?

No. It parses Google search results for pages on `assetstore.unity.com` that Google has already indexed. There is no API call, no login and no page fetch against the store itself.

#### Does the Unity Asset Store Email Scraper need a Unity account or a publisher login?

No. There is no authentication, no browser, no JavaScript rendering and no cookies. The only credential required is your Apify account's GOOGLE_SERP proxy access.

#### Where do the emails the Unity Asset Store Email Scraper returns actually come from?

From the text Google prints in result titles and snippets - publisher profile blurbs, the support section of package descriptions, and documentation notes that expose an address publicly.

#### How many emails can the Unity Asset Store Email Scraper return?

`maxEmails` accepts 1 to 10000 and defaults to 20. Free Apify plans are capped at 100 emails per run; paid plans are uncapped. Actual volume depends on your keywords and domains.

#### Why is `username` sometimes `null`?

Because Google did not expose a publisher handle for that result. Package pages are the common case - the title names the asset, not the seller. The row still carries `email`, `accountName`, `url` and `description`.

#### What does `possiblyTruncated: true` mean?

Google's snippet ellipsis touched the email, so the address may be incomplete. Verify those rows before you use them.

#### Can I restrict the Unity Asset Store Email Scraper to company domains?

Yes. Put the domains you want in `customDomains`, for example `["@studio.com", "@example.io"]`. Only emails ending in those domains are kept, and the leading `@` is optional.

#### Does it handle obfuscated addresses like `name [at] gmail [dot] com`?

Yes. The extractor normalises `[at]`, `(at)`, spaced `@`, spaced `.com`, zero-width characters and the full-width `＠`, and it filters placeholders such as `test@` and `yourname@`.

#### Can I target a specific country?

Set `countryCode` to a two-letter code such as `US`, `GB` or `DE` to steer the search proxy, and put a city or region in `location` to append it to every query.

#### What happens if a Unity Asset Store Email Scraper run is interrupted?

Progress is saved in the key-value store keyed by a hash of your input, with saves on `PERSIST_STATE`, `MIGRATING` and `ABORTING`. Leads are pushed to the dataset as they are found, so nothing already collected is lost.

#### Will it break when Google changes its HTML?

Parsing is structural rather than class-name based, and there is a whole-page fallback parser. A layout change degrades the run to "emails without account details" rather than "no emails".

#### Is the Unity Asset Store Email Scraper affiliated with Unity?

No. It is an independent Apify Actor, and it is not supported, endorsed or affiliated with Unity Technologies.

***

### Related Actors

The Unity Asset Store Email Scraper belongs to a Developer & Technology family of Apify Actors that all work the same way on different platforms. Run several to cover an ecosystem instead of a single site.

| Actor | What it collects |
|---|---|
| [App Store Email Scraper](https://apify.com/leads-scraper/app-store-email-scraper) | Public contact emails from App Store |
| [Atlassian Marketplace Email Scraper](https://apify.com/leads-scraper/atlassian-marketplace-email-scraper) | Public contact emails from Atlassian Marketplace |
| [Bitbucket Email Scraper](https://apify.com/neuro-scraper/bitbucket-email-scraper) | Public contact emails from Bitbucket |
| [Chrome Web Store Email Scraper](https://apify.com/leads-scraper/chrome-web-store-email-scraper) | Public contact emails from Chrome Web Store |
| [CodePen Email Scraper](https://apify.com/neuro-scraper/codepen-email-scraper) | Public contact emails from CodePen |
| [Confluence Email Scraper](https://apify.com/neuro-scraper/confluence-email-scraper) | Public contact emails from Confluence |
| [Dev.to Email Scraper](https://apify.com/neuro-scraper/dev-to-email-scraper) | Public contact emails from DEV Community |
| [Docker Hub Email Scraper](https://apify.com/neuro-scraper/docker-hub-email-scraper) | Public contact emails from Docker Hub |
| [Figma Community Email Scraper](https://apify.com/neuro-scraper/figma-community-email-scraper) | Public contact emails from Figma Community |
| [Firefox Add-ons Email Scraper](https://apify.com/neuro-scraper/firefox-add-ons-email-scraper) | Public contact emails from Firefox Add-ons |
| [GitHub Email Scraper](https://apify.com/leads-scraper/github-email-scraper) | Public contact emails from GitHub |
| [GitLab Email Scraper](https://apify.com/neuro-scraper/gitlab-email-scraper) | Public contact emails from GitLab |
| [Google Play Email Scraper](https://apify.com/leads-scraper/google-play-email-scraper) | Public contact emails from Google Play |
| [Hashnode Email Scraper](https://apify.com/neuro-scraper/hashnode-email-scraper) | Public contact emails from Hashnode |
| [HubSpot Marketplace Email Scraper](https://apify.com/leads-scraper/hubspot-marketplace-email-scraper) | Public contact emails from HubSpot Marketplace |
| [Hugging Face Email Scraper](https://apify.com/leads-scraper/hugging-face-email-scraper) | Public contact emails from Hugging Face |
| [Jira Email Scraper](https://apify.com/neuro-scraper/jira-email-scraper) | Public contact emails from Jira |
| [Maven Central Email Scraper](https://apify.com/neuro-scraper/maven-central-email-scraper) | Public contact emails from Maven Central |
| [Microsoft AppSource Email Scraper](https://apify.com/neuro-scraper/microsoft-appsource-email-scraper) | Public contact emails from Microsoft AppSource |
| [Salesforce AppExchange Email Scraper](https://apify.com/leads-scraper/salesforce-appexchange-email-scraper) | Public contact emails from Salesforce AppExchange |
| [Shopify App Store Email Scraper](https://apify.com/leads-scraper/shopify-app-store-email-scraper) | Public contact emails from Shopify App Store |
| [Slack App Directory Email Scraper](https://apify.com/leads-scraper/slack-app-directory-email-scraper) | Public contact emails from Slack App Directory |
| [SourceForge Email Scraper](https://apify.com/leads-scraper/sourceforge-email-scraper) | Public contact emails from SourceForge |
| [Stack Overflow Email Scraper](https://apify.com/leads-scraper/stack-overflow-email-scraper) | Public contact emails from Stack Overflow |
| [Unreal Engine Marketplace Email Scraper](https://apify.com/leads-scraper/unreal-engine-marketplace-email-scraper) | Public contact emails from Unreal Engine Marketplace |
| [WordPress Plugin Directory Email Scraper](https://apify.com/neuro-scraper/wordpress-plugin-directory-email-scraper) | Public contact emails from WordPress Plugin Directory |
| [WordPress Theme Directory Email Scraper](https://apify.com/leads-scraper/wordpress-theme-directory-email-scraper) | Public contact emails from WordPress Theme Directory |
| [Zapier App Directory Email Scraper](https://apify.com/leads-scraper/zapier-app-directory-email-scraper) | Public contact emails from Zapier App Directory |
| [App Store Email and Phone Number Scraper](https://apify.com/leads-scraper/app-store-email-and-phone-number-scraper) | Emails and phone numbers from App Store |
| [Atlassian Marketplace Email and Phone Number Scraper](https://apify.com/neuro-scraper/atlassian-marketplace-email-and-phone-number-scraper) | Emails and phone numbers from Atlassian Marketplace |
| [Bitbucket Email and Phone Number Scraper](https://apify.com/neuro-scraper/bitbucket-email-and-phone-number-scraper) | Emails and phone numbers from Bitbucket |
| [Chrome Web Store Email and Phone Number Scraper](https://apify.com/neuro-scraper/chrome-web-store-email-and-phone-number-scraper) | Emails and phone numbers from Chrome Web Store |
| [CodePen Email and Phone Number Scraper](https://apify.com/neuro-scraper/codepen-email-and-phone-number-scraper) | Emails and phone numbers from CodePen |
| [Confluence Email and Phone Number Scraper](https://apify.com/neuro-scraper/confluence-email-and-phone-number-scraper) | Emails and phone numbers from Confluence |
| [DEV Community Email and Phone Number Scraper](https://apify.com/neuro-scraper/dev-to-email-and-phone-number-scraper) | Emails and phone numbers from DEV Community |
| [Docker Hub Email and Phone Number Scraper](https://apify.com/neuro-scraper/docker-hub-email-and-phone-number-scraper) | Emails and phone numbers from Docker Hub |
| [Figma Community Email and Phone Number Scraper](https://apify.com/neuro-scraper/figma-community-email-and-phone-number-scraper) | Emails and phone numbers from Figma Community |
| [Firefox Add-ons Email and Phone Number Scraper](https://apify.com/neuro-scraper/firefox-add-ons-email-and-phone-number-scraper) | Emails and phone numbers from Firefox Add-ons |
| [GitHub Email and Phone Number Scraper](https://apify.com/leads-scraper/github-email-and-phone-number-scraper) | Emails and phone numbers from GitHub |
| [GitLab Email and Phone Number Scraper](https://apify.com/neuro-scraper/gitlab-email-and-phone-number-scraper) | Emails and phone numbers from GitLab |
| [Google Play Email and Phone Number Scraper](https://apify.com/leads-scraper/google-play-email-and-phone-number-scraper) | Emails and phone numbers from Google Play |
| [Hashnode Email and Phone Number Scraper](https://apify.com/neuro-scraper/hashnode-email-and-phone-number-scraper) | Emails and phone numbers from Hashnode |

### Leave a review

If the Unity Asset Store Email Scraper saved you time, please leave a star rating and a short
review on the Actor page.

Reviews are how other buyers judge whether a tool works, and they tell us which features to
build next.

If something did not work, email <neurodata.apify@gmail.com>
instead - bugs get fixed faster than they get complained about.

### Support

Questions, a bug, or a custom build of the Unity Asset Store Email Scraper for your own domain list? Email **neurodata.apify@gmail.com** and we will get back to you.

# Actor input Schema

## `keywords` (type: `array`):

Search terms describing the Unity Asset Store accounts you want (niche, job title, industry).

## `location` (type: `string`):

Optional location phrase added to every query (e.g. "New York").

## `customDomains` (type: `array`):

Only emails ending with one of these domains are collected. With or without the leading @. Each domain is searched separately, so more domains means more results but a longer run - remove some for a faster, narrower search, or add your own (e.g. @company.com).

## `maxEmails` (type: `integer`):

Stop once this many unique emails have been collected.

## `countryCode` (type: `string`):

Two-letter country code for the search proxy (e.g. US, GB, DE). Empty for any.

## `expandQueries` (type: `boolean`):

Search each keyword x domain pair with several phrasings. Recommended - Google caps a single query at ~300 results.

## `queryModifiers` (type: `array`):

Extra words combined with each keyword when Expand queries is on. Tuned for Unity Asset Store.

## `maxPagesPerQuery` (type: `integer`):

Google rarely returns more than ~30 pages for one query.

## `maxConcurrency` (type: `integer`):

How many queries run in parallel.

## Actor input object example

```json
{
  "keywords": [
    "asset publisher",
    "game developer"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com",
    "@yahoo.com"
  ],
  "maxEmails": 20,
  "countryCode": "",
  "expandQueries": true,
  "queryModifiers": [
    "email",
    "contact",
    "support",
    "developer",
    "publisher"
  ],
  "maxPagesPerQuery": 30,
  "maxConcurrency": 5
}
```

# Actor output Schema

## `results` (type: `string`):

Records produced by Unity Asset Store Email Scraper, stored in the run's default dataset.

# 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 = {
    "keywords": [
        "asset publisher",
        "game developer"
    ],
    "location": "",
    "customDomains": [
        "@gmail.com",
        "@yahoo.com"
    ],
    "countryCode": "",
    "queryModifiers": [
        "email",
        "contact",
        "support",
        "developer",
        "publisher"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("leads-scraper/unity-asset-store-email-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 = {
    "keywords": [
        "asset publisher",
        "game developer",
    ],
    "location": "",
    "customDomains": [
        "@gmail.com",
        "@yahoo.com",
    ],
    "countryCode": "",
    "queryModifiers": [
        "email",
        "contact",
        "support",
        "developer",
        "publisher",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("leads-scraper/unity-asset-store-email-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 '{
  "keywords": [
    "asset publisher",
    "game developer"
  ],
  "location": "",
  "customDomains": [
    "@gmail.com",
    "@yahoo.com"
  ],
  "countryCode": "",
  "queryModifiers": [
    "email",
    "contact",
    "support",
    "developer",
    "publisher"
  ]
}' |
apify call leads-scraper/unity-asset-store-email-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,leads-scraper/unity-asset-store-email-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/QAW9OOfbh8JBseSt5/builds/qnFKFkWUpJK7vuJjC/openapi.json
