Salesforce AppExchange Scraper
Pricing
Pay per event
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
Actor stats
2
Bookmarked
66
Total users
3
Monthly active users
3 days ago
Last modified
Categories
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
maxItemsor set it to0and 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
- 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.
- Extracts structured data. Each listing page embeds a
window.storesJSON 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. - 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"}}
| Field | Type | Default | Description |
|---|---|---|---|
appsUrls | array | [] | URLs of specific AppExchange listings to crawl. Leave empty to crawl all apps from the sitemap. |
maxItems | integer | 10 | Maximum number of apps to scrape. Set to 0 to scrape all ~6,000 listings. |
proxyConfiguration | object | Apify US proxy | Proxy 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"}
| Field | Type | Description |
|---|---|---|
app_name | string | App name from the listing page |
developer_name | string | Publisher or developer company name |
developer_website | string | Publisher website URL |
developer_email | string | Publisher contact email |
developer_location | string | Publisher headquarters location |
developer_employees | number | Publisher employee count |
developer_year_founded | number | Year the publisher was founded |
review_count | number | Total number of reviews |
average_rating | number | Average review rating |
description | string | App description from meta tags |
logo_url | string | App logo or image URL |
products_required | array | Salesforce products required to use the app |
listing_categories | array | AppExchange categories the listing belongs to |
products_supported | array | Salesforce products the app supports |
target_user_persona | array | Target user personas (e.g., Sales Ops, Admins) |
system_requirements | string | System requirements text |
supported_industries | array | Industries the app is designed for |
app_url | string | Full 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.