Salesforce AppExchange Scraper avatar

Salesforce AppExchange Scraper

Pricing

Pay per event

Go to Apify Store
Salesforce AppExchange Scraper

Salesforce AppExchange Scraper

Scrape app listings from Salesforce AppExchange including developer info, ratings, categories, and supported products

Pricing

Pay per event

Rating

5.0

(1)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

2

Bookmarked

66

Total users

3

Monthly active users

3 days ago

Last modified

Share

Scrape app listings from Salesforce AppExchange. Pulls developer contact info, ratings, categories, supported products, and industry data from all ~6,000 listings — or just the ones you point it at.

Salesforce AppExchange Scraper Features

  • Extract developer details: company name, website, email, HQ location, employee count, founding year
  • Collect review statistics and average ratings across the entire marketplace in a single run
  • Grab listing metadata — categories, supported Salesforce products, required products, target personas, system requirements
  • Crawl the full sitemap automatically, or supply specific listing URLs when you already know what you want
  • Set a cap with maxItems or set it to 0 and walk away while it scrapes everything

Who Uses AppExchange Data and Why

  • Sales teams — build lead lists of Salesforce ecosystem companies, filtered by industry and employee count
  • Product managers — map the competitive landscape for a Salesforce product category without manually clicking through thousands of listings
  • Market researchers — track rating trends, review velocity, and new entrants across the AppExchange over time
  • Developers — find which Salesforce products are most commonly required or supported, informing integration priorities
  • Consultants — identify partners and vendors by location, industry focus, or founding year

How Salesforce AppExchange Scraper Works

  1. Discovers listings. Fetches the AppExchange sitemap and extracts every listing URL. If you provide specific URLs instead, it skips the sitemap entirely and goes straight to those.
  2. Extracts structured data. Each listing page embeds a window.stores JSON object with the full listing payload — developer info, review stats, categories, the lot. The scraper parses that directly rather than scraping DOM elements, which means the data is clean and complete.
  3. Outputs to dataset. Every record lands in the Apify dataset with consistent field names, ready for export to CSV, JSON, Excel, or downstream integrations.

Input

{
"appsUrls": [],
"maxItems": 10,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyCountry": "US"
}
}
FieldTypeDefaultDescription
appsUrlsarray[]URLs of specific AppExchange listings to crawl. Leave empty to crawl all apps from the sitemap.
maxItemsinteger10Maximum number of apps to scrape. Set to 0 to scrape all ~6,000 listings.
proxyConfigurationobjectApify US proxyProxy settings for the crawler. Apify proxy with US geolocation is recommended.

Scrape specific listings

{
"appsUrls": [
{ "url": "https://appexchange.salesforce.com/appxListingDetail?listingId=a0N4V00000HZZEaUAP" },
{ "url": "https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000EFpAtUAL" }
],
"maxItems": 0,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Scrape entire marketplace

{
"maxItems": 0,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyCountry": "US"
}
}

Salesforce AppExchange Scraper Output Fields

Each listing produces one record with the following fields:

{
"app_name": "Conga Composer",
"developer_name": "Conga",
"developer_website": "https://www.conga.com",
"developer_email": "support@conga.com",
"developer_location": "Broomfield, CO",
"developer_employees": 1200,
"developer_year_founded": 2006,
"review_count": 843,
"average_rating": 4.7,
"description": "Generate polished documents, presentations, and reports from Salesforce data with a few clicks.",
"logo_url": "https://appexchange.salesforce.com/partners/servlet/servlet.FileDownload?file=00P4V000012example",
"products_required": ["Sales Cloud", "Service Cloud"],
"listing_categories": ["Document Generation", "Productivity"],
"products_supported": ["Sales Cloud", "Service Cloud", "Experience Cloud"],
"target_user_persona": ["Sales Operations", "Revenue Operations"],
"system_requirements": "Salesforce Enterprise Edition or higher",
"supported_industries": ["Financial Services", "Healthcare", "Manufacturing"],
"app_url": "https://appexchange.salesforce.com/appxListingDetail?listingId=a0N300000016bFkEAI"
}
FieldTypeDescription
app_namestringApp name from the listing page
developer_namestringPublisher or developer company name
developer_websitestringPublisher website URL
developer_emailstringPublisher contact email
developer_locationstringPublisher headquarters location
developer_employeesnumberPublisher employee count
developer_year_foundednumberYear the publisher was founded
review_countnumberTotal number of reviews
average_ratingnumberAverage review rating
descriptionstringApp description from meta tags
logo_urlstringApp logo or image URL
products_requiredarraySalesforce products required to use the app
listing_categoriesarrayAppExchange categories the listing belongs to
products_supportedarraySalesforce products the app supports
target_user_personaarrayTarget user personas (e.g., Sales Ops, Admins)
system_requirementsstringSystem requirements text
supported_industriesarrayIndustries the app is designed for
app_urlstringFull AppExchange listing URL

FAQ

How many listings can Salesforce AppExchange Scraper handle? Salesforce AppExchange Scraper processes the entire marketplace — roughly 6,000 listings at last count. Set maxItems to 0 and it will work through every one. A full run takes about an hour depending on proxy speed.

Does it need proxies? Salesforce AppExchange Scraper works best with Apify proxy set to a US geolocation. The site does not aggressively block scrapers, but proxies keep things reliable at scale.

Can I scrape just a handful of specific apps? Yes. Pass their URLs in the appsUrls field and the scraper skips the sitemap entirely. Useful when you already know which listings you care about.

What happens if a listing page fails to load? The scraper logs a warning and moves on. Failed pages do not stop the run or corrupt the dataset. You can check the run log afterward to see which URLs, if any, were skipped.

How fresh is the developer contact info? Salesforce AppExchange Scraper reads whatever is on the listing page at crawl time. If a developer has updated their email or location since your last run, the new data shows up on the next one.

Need More Features?

Need custom fields, filters, or a different target site? File an issue or get in touch.

Why Use Salesforce AppExchange Scraper?

  • Structured data from a messy source — The scraper pulls from the embedded JSON payload, not fragile DOM selectors, so the output is consistent and complete across all listings.
  • Two modes, no configuration headaches — Point it at specific URLs or let it discover every listing from the sitemap. Either way, the output schema stays the same, which means your downstream pipeline does not care which mode you used.
  • Developer intel that is hard to get manually — Employee count, founding year, HQ location, contact email — all sitting in the listing data but buried behind clicks. The scraper flattens it into one row per app, ready for your CRM or spreadsheet.