App Developer Leads — Publisher Emails, Phones & Websites avatar

App Developer Leads — Publisher Emails, Phones & Websites

Pricing

from $4.00 / 1,000 leads

Go to Apify Store
App Developer Leads — Publisher Emails, Phones & Websites

App Developer Leads — Publisher Emails, Phones & Websites

Collect public app and publisher contacts across supported stores; filter and group developer leads. No login. Bulk export: JSON, CSV, Excel and API. PPE: $4/1K basic leads; usage extra; mode rates differ.

Pricing

from $4.00 / 1,000 leads

Rating

0.0

(0)

Developer

Apivault Labs

Apivault Labs

Maintained by Community

Actor stats

1

Bookmarked

8

Total users

4

Monthly active users

4 days ago

Last modified

Share

App Developer Leads — 6 Stores, Emails & Websites

Find public contacts for app and extension publishers. Search a niche or paste exact app links, then export publisher names, published emails, websites and the apps behind each lead.

Supports Google Play, Apple App Store, Chrome Web Store, Firefox Add-ons, Microsoft Store and VS Code Marketplace. No login or source API key is required. Running through Apify or MCP requires your Apify account.

First run

Choose Google Play, enter meditation, and start with 10 apps and 20 delivered leads. Open Output → Export publisher leads when the run finishes. The dataset groups apps by publisher by default; download JSON, CSV or Excel.

{
"store": "googleplay",
"keywords": ["meditation"],
"maxAppsPerQuery": 10,
"maxLeads": 20,
"tier": "basic"
}

To get only contacts with a published email, add "requireEmail": true. A listing without email can still be a useful publisher lead when this filter is off.

Choose your workflow

GoalInput
Find publishers in a nichekeywords, chosen store, optional requested countries
Inspect known appsappUrls belonging to the selected store; no keyword needed
Browse a category samplediscoverBy: "category" and categories
Collect additional public website datatier: "premium"
Export one row per app and requested marketdedupeByCompany: false
Export simple spreadsheet columnsflatOutput: true

Exact-link example:

{
"store": "googleplay",
"appUrls": ["https://play.google.com/store/apps/details?id=meditofoundation.medito"],
"maxLeads": 1,
"requireEmail": true
}

Extension example:

{
"store": "firefox",
"keywords": ["markdown"],
"maxAppsPerQuery": 10,
"maxLeads": 10,
"flatOutput": true
}

Data and its meaning

FieldMeaning
company, website, bestEmail, phonePublicly observed publisher/contact data; some fields may be empty
appsApp IDs, listing URLs, requested markets, ratings, audience measures and update dates
appCountUnique apps observed for this publisher in this run, not its full portfolio
appMarketCountObserved app/market combinations
sourceEvidence, observedAtWhere the data was observed and when
audienceMetricLabelled downloads, listing users, daily users or extension installs; these are different measures
downloadCountLowerBoundGoogle Play's published downloads threshold; unknown for other stores
leadScore, leadScoreReasonsA heuristic based on available public data; not verified sales intent
activityStatusClassification from a valid observed update month; missing/future dates stay unknown
linkedinSearchUrlA research search link, not a verified company profile
emailDomainMxOptional DNS MX observation; not mailbox or deliverability verification

Company grouping uses a published website domain or exact publisher name within a store. Shared hosting and social domains do not merge different publishers. Grouped app metadata remains in apps; use dedupeByCompany: false for individual app rows. Flat output keeps appIds, appStoreUrls and appsJson for traceability.

Basic includes public listing data, filtering, grouping and scoring. Premium additionally tries at most two public website pages for extra emails, phone, visible technology signatures and social links, checks DNS MX, and adds publisher-app observations where available. Enrichment is best effort and may be empty. Website signatures are not a complete technology inventory.

Apple publisher-app counts describe the requested country lookup, with a 200-record cap. Google Play counts are observed listing samples, not publisher totals. Company headcount is unknown. Legacy companySize filters refer only to Google Play download thresholds; they do not measure company size. Legacy emailValid stays null because a DNS check cannot verify a mailbox.

Filters and limits

Set requireEmail, minRating, onlyActiveApps, onlyWithoutWebsite, minInstalls or minDeveloperApps. A positive filter excludes unknown values. minInstalls applies only to Google Play downloads; it does not substitute Firefox daily users or extension installs. onlyWithoutWebsite means no valid published website link was retrieved, not proof that no website exists.

Search uses your exact keywords and requested markets by default. expandKeywords: true explicitly enables a broader, labelled keyword sample. includeSimilarApps: true adds one bounded Google Play related-app wave; neither feature returns official keyword ranks.

Public store search windows differ and can return fewer records than requested. Firefox search reads up to five pages of 25, VS Code up to six pages of 50; other stores expose a bounded initial window. Category mode uses a category window where available, with a labelled fallback sample; Microsoft Store and VS Code category names are keyword queries. No complete store catalogue, exhaustive keyword results or official keyword ranking is promised.

Limits: 20 keywords/categories, five markets, 100 exact links, 120 search combinations, 2000 app/market records collected overall, and at most 1000 delivered leads. runBudgetSecs is 10–600 seconds (default 240); request read timeout is 2–30 seconds. Source limits, deadline, filters and spending cap can reduce output. Browser-extension and VS Code catalogues are global; country is not a publisher-location field.

Price

Basic: $4 per 1000 delivered leads. Premium: $8 per 1000 delivered leads. One grouped publisher row is one lead. No Actor start event. Platform usage is billed separately under Apify's applicable rates.

Filtered apps, unavailable listings and free SUMMARY/ERRORS diagnostics do not incur lead events. The spending limit can stop delivery before maxLeads. Price is per delivered row, including leads whose optional enrichment is unavailable.

Output and partial results

Output provides the dataset plus two diagnostic records:

  • SUMMARY: result count, verified apps, filter counts, requested discovery scope, dedupe skips and collection status.
  • ERRORS: unavailable sources, partial collection, invalid inputs or delivery limits.

EMPTY means a valid search/filter/dedupe returned no leads. A failed source collection is reported as failed rather than an empty success. A run with useful rows and source errors may succeed with PARTIAL in SUMMARY. Always read the diagnostics before treating a sample as complete.

Optional dedupeAcrossRuns: true uses your named stateStoreName, remembers only delivered keys, and refuses simultaneous collection using the same state. Default is off. Version 2 uses a fresh delivered-key record and does not import unreliable legacy seen-state. Use a new storage name to restart or change grouping mode. Capacity is 50000 keys; no historical dataset or notification system is created.

MCP and AI agents

On the Actor's API → MCP tab, copy Apify's generated connection configuration into your MCP client. Add this Actor to the hosted server's selected tools. Keep your Apify token in the client's secret settings.

Agent prompt:

Use apivault_labs/app-developer-leads to find Google Play publishers for meditation. Collect at most 10 apps and return at most 5 Basic leads with email. Read SUMMARY and ERRORS, then show the company, email and source app links. Explain any missing contacts or partial coverage.

Actor arguments:

{
"store": "googleplay",
"keywords": ["meditation"],
"maxAppsPerQuery": 10,
"maxLeads": 5,
"requireEmail": true,
"tier": "basic"
}

The hosted tool is apivault_labs--app-developer-leads. If the response is still running, wait for completion before reading dataset items. Use the hosted storage tools to read the dataset and the SUMMARY/ERRORS records. The run's lead events and platform usage still apply through MCP.

For HTTP clients, use the Actor API tab's generated example with the same JSON input. Retrieve dataset items and diagnostics after completion. Published contacts are observations; decide suitability for your intended outreach independently. This Actor does not send messages.

App publisher prospecting workflows

Find app developers when your target account is connected to a published app or browser extension. The result connects an observed publisher to its listings and available public contact routes. It does not establish the legal entity behind every publisher or a complete contact directory for the software company.

GoalStarting inputImportant interpretation
Research a product nicheExact keyword and chosen storeBounded discovery sample, not official keyword rank
Enrich a known app listExact appUrls for the selected storeListing evidence for the apps actually inspected
Find browser-extension publishersFirefox, Chrome or VS Code storeStore-specific audience measures are not interchangeable
Reduce repeated publisher rowsDefault company groupingappCount counts this run's observed apps
Inspect public developer websitesPremium tierExtra fields may remain missing when pages cannot be read

Inspect one known Google Play publisher

An exact link avoids keyword ambiguity. With a one-lead limit, this is a small first check of the listing, publisher and provenance fields. It is not a promise that every optional contact exists or remains unchanged.

{
"store": "googleplay",
"appUrls": [
"https://play.google.com/store/apps/details?id=meditofoundation.medito"
],
"maxLeads": 1,
"tier": "basic",
"dedupeByCompany": true
}

Find a short niche sample with published email

The email filter can return fewer leads than the collected app count. Grouping can also turn several apps into one publisher row. Do not treat the number of inspected apps as a count of unique contactable companies.

{
"store": "googleplay",
"keywords": [
"meditation"
],
"maxAppsPerQuery": 5,
"maxLeads": 5,
"requireEmail": true,
"tier": "basic"
}

Prepare an extension-publisher spreadsheet

Flat output retains listing references so a reviewer can open the original apps. Firefox audience figures are not Google Play downloads or company employees. Preserve audienceMetric when comparing a mixed-store list.

{
"store": "firefox",
"keywords": [
"markdown"
],
"maxAppsPerQuery": 5,
"maxLeads": 5,
"flatOutput": true,
"tier": "basic"
}

Try bounded public website enrichment

Premium attempts additional public observations. A website may refuse access, omit contacts or expose few technology signatures. A useful lead can still be delivered and billed at the Premium rate when some optional enrichment is unavailable; inspect the row and diagnostics.

{
"store": "googleplay",
"appUrls": [
"https://play.google.com/store/apps/details?id=meditofoundation.medito"
],
"maxLeads": 1,
"tier": "premium",
"includeWebsiteEmails": true,
"detectTech": true
}

Choose publisher rows or app rows deliberately

Company grouping makes an outreach/research list easier to review, but it does not turn observed names or domains into a verified corporate registry. One publisher can have several apps and requested markets in a grouped row. Use appCount for unique apps observed in this run, appMarketCount for the observed app/market combinations, and apps for their listing references.

When dedupeByCompany is false, output is closer to individual app/market records and may contain the same publisher repeatedly. Count delivered rows when reconciling billing. Store domains and sourceEvidence separately from your CRM's own account identity and review decisions.

Work with contacts and audience estimates safely

A store-published email, a website-enriched address and a generated research link carry different evidence. linkedinSearchUrl is a search link, not a confirmed company profile. emailDomainMx is a DNS observation, not a working mailbox test. Missing values can reflect source limits and should not be converted into confident negatives about the developer.

Likewise, a Google Play downloads threshold is a lower bound reported by the listing. Extension installs, Firefox daily users and other audience measures answer different questions. None directly measures company size, current active customers, revenue or willingness to buy your service.

Estimate costs for Basic and Premium lead files

Active configuration checked 20 October 2026: Basic is $0.004 per delivered lead; Premium is $0.008 per delivered lead. Five Basic rows have $0.02 in result fees, and five Premium rows have $0.04. There is no start event. User-paid platform usage is additional.

These are arithmetic examples, not run-total quotes or promised lead counts. Filtering, grouping and source availability can reduce delivered output, while inspected apps and website enrichment consume resources. Use a small app cap, explicit maxLeads and a platform spending cap before scaling to several queries or markets.

Recover and repeat a publisher research job

Save completed run and dataset IDs so download failures can be recovered without repeating discovery. If you use cross-run deduplication, keep the same named state only for the same intended grouping scope; do not run two collectors against it simultaneously. Reusing an unrelated state can hide leads you expected to inspect.

The state records delivered keys, not an automatically maintained customer database. A new state restarts collection and can bill previously observed publishers again. Always read SUMMARY and ERRORS before describing an empty or partial result as lack of publishers in a niche.

More questions about app developer leads

Does the Actor return the owner's personal email?

It returns available public publisher/contact observations. A listing may publish a support address or general business inbox; it is not a guarantee of a named owner's identity or a private contact channel.

Can I compare six stores as one ranked market?

You can research supported stores, but their discovery windows, countries and audience definitions differ. The result is not an exhaustive or uniformly ranked cross-store market census.

Can I monitor app changes with the deduplication state?

Deduplication remembers delivered keys. It is not a complete version-history or change-alert system. Preserve datasets and implement the comparison your research needs in a separate workflow.

n8n and developer integrations

Use this Actor in your automation or application with the existing community integrations below. An Apify account and API token are required; Actor and platform charges follow the current pricing.

  • n8n community node: n8n-nodes-apivault-app-leads. Install package name n8n-nodes-apivault-app-leads in a self-hosted n8n instance that permits community packages.
  • Python client and examples: GitHub.
  • n8n source and usage: GitHub.

These are community packages. Publication on npm does not establish n8n verification or availability in n8n Cloud. Review the linked package README for supported inputs and setup.