ThomasNet Suppliers Scraper
Pricing
from $5.00 / 1,000 supplier scrapeds
ThomasNet Suppliers Scraper
Scrape ThomasNet industrial suppliers by keyword, location, or URL. Returns name, phone, website, location, year founded, employees, certifications. MCP/API-ready.
Pricing
from $5.00 / 1,000 supplier scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
11 days ago
Last modified
Categories
Share
What is ThomasNet Suppliers Scraper?
ThomasNet Suppliers Scraper is an Apify Actor for discovering ThomasNet industrial suppliers by keyword, location, category URL, or direct supplier profile URL. It accepts a single record of input per query path, and each output record represents one supplier. The most useful fields include supplier name, phone, website, location, company type, headline, source URL, and, when enrichment is enabled, year founded, employee count, annual sales, certifications, and products. The Actor is available through Apify API and Apify MCP, and it returns structured supplier records plus a run summary.
Best fit and connected workflows
This Actor fits supplier discovery workflows that begin on ThomasNet and continue into qualification, enrichment, and review.
Use searchQueries when you want product-led or service-led discovery such as cnc machining, sheet metal fabrication, or plastic injection molding. Each keyword is searched separately across ThomasNet's North America directory.
Use startUrls when you already have a ThomasNet nsearch URL or a supplier profile URL and want to scrape those records directly. A profile URL is a strong starting point when a specific supplier already matters to your workflow.
Turn on enrichDetails when your next step benefits from profile-level fields such as description, year founded, employee count, annual sales, certifications, and products taxonomy.
This Actor also works well as the first step in a broader Apify workflow where the dataset is passed into downstream scoring, CRM preparation, or AI-assisted review.
Practical scenario
A procurement specialist is assembling a shortlist of machine shops for a U.S. manufacturing project. They start with the keyword cnc machining and set maxResults to 25. The returned records include supplier name, phone, website, city, state, headline, company type, and profile URL. The specialist reviews those fields to identify suppliers that fit the project geography and capability, then opens the profile URL for any supplier that deserves a closer vendor review.
Input
| Field | Type | Purpose |
|---|---|---|
searchQueries | array of strings | Free-text ThomasNet searches. Each keyword is searched separately across the North America directory. |
startUrls | array of strings | Direct ThomasNet nsearch URLs or supplier profile URLs. |
maxResults | integer | Hard cap on the total number of suppliers scraped and billed across the run. |
maxPagesPerQuery | integer | Maximum number of pages to paginate for each keyword or listing URL. |
enrichDetails | boolean | Follows listing suppliers to their profile pages for profile-level fields. |
proxyConfiguration | object | Proxy settings used for all requests. |
Focused JSON example:
{"searchQueries": ["cnc machining", "sheet metal fabrication"],"maxResults": 20,"maxPagesPerQuery": 3,"enrichDetails": true}
Output
| Field | Type | Purpose |
|---|---|---|
supplierName | string or null | Supplier name from the listing or profile. |
supplierId | string or null | ThomasNet identifier extracted from the supplier profile path. |
profileUrl | string or null | Canonical ThomasNet supplier profile URL. |
headline | string or null | Supplier headline or summary line. |
companyType | string or null | Supplier type such as manufacturer, distributor, or service provider. |
logoUrl | string or null | Supplier logo image URL. |
city | string or null | City from the address. |
state | string or null | State or region from the address. |
postalCode | string or null | Postal code. |
country | string or null | Country. |
fullAddress | string or null | Full address string as shown on ThomasNet. |
phone | string or null | Primary phone number. |
website | string or null | External company website. |
description | string or null | Profile description from ThomasNet. |
yearFounded | number or null | Year founded. |
employeeCount | string or null | Employee count or band. |
annualSales | string or null | Annual sales band. |
certifications | array or null | Certifications listed on the profile. |
products | array or null | Products or services taxonomy. |
isClaimed | boolean or null | Claimed profile status. |
isAdvertiser | boolean or null | Advertiser status. |
sourceUrl | string or null | Source listing URL where the supplier was found. |
position | number or null | Listing position on the page. |
enriched | boolean or null | Whether the profile page was visited. |
scrapedAt | string or null | Scrape timestamp. |
Illustrative dataset record:
{"supplierName": "Example Machining Inc.","supplierId": "30088334","profileUrl": "https://www.thomasnet.com/company/example-machining-30088334/profile","headline": "CNC machining and precision manufacturing","companyType": "Manufacturer","city": "Houston","state": "TX","phone": "+1-555-0100","website": "https://example.com","yearFounded": 1998,"employeeCount": "50-99","certifications": ["ISO 9001"],"sourceUrl": "https://www.thomasnet.com/nsearch.html?cov=NA&searchterm=cnc%20machining","position": 1,"enriched": true}
How it works
The Actor accepts either keyword searches or direct ThomasNet URLs.
searchQueriesruns each keyword through ThomasNet's nsearch and paginates listing pages up tomaxPagesPerQuery.startUrlsaccepts ThomasNet nsearch result URLs and supplier profile URLs.maxResultscaps the total number of suppliers scraped and billed across the full run.enrichDetailsfollows listing suppliers to profile pages and adds profile-level fields.- Results are written to the default Apify dataset, and the run summary is written to the default key-value store under
OUTPUT. - The live contract defines three charged events:
apify-actor-start,supplier-scraped, andsupplier-detail-enriched.
Pricing
This Actor uses Pay per event pricing and also includes Apify platform usage. The live Pricing tab is the source of truth for current pricing details.
The primary event is Supplier scraped, charged for each supplier card returned. When enrichDetails is enabled, each enriched supplier also adds a Supplier detail enriched event.
Example in words: if a run returns twenty supplier cards and enrichment is off, the run is billed for twenty Supplier scraped events plus one Actor start event. If enrichment is on, each enriched supplier adds one additional enrichment event.
Review the live Pricing tab before running large batches so the cost model matches your planned scope.
Use with AI agents (MCP)
This Actor is available through Apify MCP as a tool for ThomasNet supplier discovery and profile extraction. It accepts the same input fields as the Actor, returns structured supplier records, and includes a run summary for cost and count review.
Exact Actor identity: khadinakbar/thomasnet-suppliers-scraper
Find ThomasNet suppliers for CNC machining in the United States. Return the first twenty suppliers, include profile details when available, and summarize the dataset records so I can review company type, location, website, and certifications.
Output interpretation:
- Use
datasetto read the supplier records from the default Apify dataset. - Use
summaryto review the run summary stored in the default key-value store. supplier-scrapedis the billing unit for each supplier card returned.supplier-detail-enrichedapplies when profile pages are followed for richer fields.sourceUrlshows the listing page that produced each record, andprofileUrltraces the supplier profile when available.
Provenance and scope:
- Records come from ThomasNet supplier listings and profile pages.
- The Actor is designed for ThomasNet supplier discovery and profile extraction.
- The scope centers on public directory data returned from the queried ThomasNet pages.
Pagination and cost guidance:
- Increase
maxPagesPerQueryfor broader coverage within a keyword or listing URL. - Use
maxResultsas the main cost control. - Enable
enrichDetailswhen profile-level fields matter for the downstream task.
JavaScript API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/thomasnet-suppliers-scraper').call({searchQueries: ['cnc machining'],maxResults: 5,enrichDetails: true,});const datasetItems = await client.dataset(run.defaultDatasetId).listItems();console.log('Run ID:', run.id);console.log('Dataset items:', datasetItems.items);
Best results and outcome guidance
Use precise supplier-intent keywords such as product types, manufacturing processes, service categories, or known ThomasNet profile URLs. Set maxResults to the number of suppliers you want to review, and raise maxPagesPerQuery when you want deeper pagination for a keyword or listing page. Turn on enrichDetails when your review depends on profile-level fields such as certifications, year founded, employee count, or annual sales. Residential proxy settings are provided in the live input contract and are the default path for requests.
Continue the workflow
- Then use Universal B2B Lead Finder — Extract Emails, Phones & Business Contacts to extend ThomasNet Suppliers Scraper with a neighboring local-business research source when the brief calls for Universal data.
- Then use Practo Doctor Scraper to extend ThomasNet Suppliers Scraper with a neighboring local-business research source when the brief calls for Practo data.
Design note
I found that the live schema keeps listing-level data and profile-level enrichment in separate fields: phone, website, headline, and location fields are available from listings, while description, yearFounded, employeeCount, annualSales, certifications, and products appear when profile enrichment is enabled.
FAQ
Can I start from a ThomasNet keyword search?
Yes. Add one or more values to searchQueries, and the Actor searches each keyword separately.
Can I start from an existing ThomasNet page?
Yes. Use startUrls for ThomasNet nsearch result URLs or supplier profile URLs.
What field should I use to identify the source page?
Use sourceUrl. When enrichment is available, profileUrl identifies the supplier profile page.
How do I get year founded and certifications?
Enable enrichDetails so the Actor follows supplier profiles and returns profile-level fields.
How does pagination work?
maxPagesPerQuery limits listing-page pagination for each search term or URL, while maxResults limits the total number of suppliers across the run.
How can I keep the run scope focused?
Start with a specific keyword or a single ThomasNet URL, then use maxResults and maxPagesPerQuery to match the number of suppliers you want to review.
Responsible use
Use this Actor for lawful business research, supplier discovery, and workflow automation. Keep usage aligned with ThomasNet's terms and with the rights of site owners and suppliers. The Actor is intended for publicly accessible directory information and structured downstream review.