# Thomasnet Scraper | US Industrial Suppliers (`lentic_clockss/thomasnet-scraper`) Actor

Scrape Thomasnet (www.thomasnet.com) US industrial B2B suppliers via keyword search, heading categories, and company profiles. Extract tgramsId, location, sales, employees, capabilities, and profile URLs. Export Excel, CSV, or JSON. Unofficial — not affiliated with Thomas Publishing / Thomasnet.

- **URL**: https://apify.com/lentic\_clockss/thomasnet-scraper.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.20 / 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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Thomasnet Scraper | US Industrial Suppliers

**Scrape [Thomasnet](https://www.thomasnet.com) US industrial B2B suppliers, heading categories, and company profiles — then download structured manufacturer data as Excel, CSV, or JSON.**

Use this Actor as a practical **Thomasnet data API** for US supplier discovery, procurement shortlists, industrial market research, and lead enrichment. Choose a mode, set a keyword / heading / company URL, and get Dataset rows with `tgramsId`, company name, location, sales band, employee count, capabilities, headings, and profile URLs.

- Scrape **supplier keyword search** (`/suppliers/search`)
- Browse **heading / category lists** (`/suppliers/usa/{slug}-{headingId}`)
- Pull **company profile** pages (`/company/{slug}-{tgramsId}/profile`)
- Optional **browse** mode for heading discovery
- Extract **tgramsId, name, website, city/state/zip, annualSales, numberEmployees, yearFounded, capabilities, headings, tier flags**
- Optional `enrichDetails`, `zip` + `radius`, and `filterIds`
- Export to **Excel / CSV / JSON**, or connect Make, n8n, Zapier, Python, or the Apify API
- **Pay per event** — Actor start + each Dataset result; **platform usage is included** (you do not pay separate Apify compute on top)

> **Unofficial tool.** This Actor is not affiliated with, endorsed by, or sponsored by Thomas Publishing / Thomasnet.com. It collects publicly reachable listing and profile surfaces and does **not** log in, auto-click Contact Supplier / Claim / Register / Sign In, or access private accounts. Phone numbers are **redacted by default**.

***

### What does the Thomasnet Scraper do?

[Thomasnet Scraper](https://apify.com/lentic_clockss/thomasnet-scraper) lets you **extract structured US industrial supplier data from [www.thomasnet.com](https://www.thomasnet.com/)** without running your own anti-bot browser fleet. Give it a keyword (e.g. `precision castings`, `cnc machining`), a heading slug + id, or a company profile URL / `tgramsId`, then start a run.

Under the hood, the Actor:

1. Validates your input (mode, query, heading, company identifiers)
2. Enforces free-tier caps when you are on a free Apify plan
3. Fetches public Thomasnet listing and profile pages through a managed scrape backend
4. Normalizes supplier / company rows into a clean Dataset
5. Writes `INPUT_ECHO`, `RUN_SUMMARY` (and `ERROR_SUMMARY` on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.

***

### What Thomasnet data can I extract?

| Data | Supplier search | Heading list | Company profile | Browse |
| --- | :---: | :---: | :---: | :---: |
| tgramsId / profile URL | ✅ | ✅ | ✅ | — |
| company name | ✅ | ✅ | ✅ | heading titles |
| website | ✅ | ✅ | ✅ | — |
| city / state / zip | ✅ | ✅ | ✅ | — |
| annualSales / employees / yearFounded | ✅ | ✅ | ✅ | — |
| capabilities / headings | ✅ | ✅ | ✅ | heading links |
| tier / advertiser / claimed flags | ✅ | ✅ | ✅ | — |
| primaryPhone (redacted by default) | ✅ | ✅ | ✅ | — |

Street addresses stay off unless you set `includeStreet: true`. Contact / Claim flows are never auto-clicked.

***

### Why scrape Thomasnet?

Thomasnet is a major US industrial B2B directory covering manufacturers, custom fabricators, distributors, and service providers across metals, plastics, machining, electronics, and more. Teams scrape Thomasnet for **supplier discovery**, **procurement shortlists**, **competitor monitoring**, and **industrial lead generation**:

- Monitor **keyword supplier search** results for a commodity or process
- Follow **heading categories** (e.g. CNC Machining, Precision Castings) with stable heading IDs
- Pull **company profiles** with sales bands, employee counts, and capability tags
- Optionally filter by **ZIP + radius** or pass-through `filterIds`
- Feed CRM, BI dashboards, Google Sheets, BigQuery, or AI agents with clean rows

Compared with generic URL scrapers, this Actor returns **Thomasnet-specific fields** (`tgramsId`, heading IDs, sales/employee bands, capability tags) across search, heading, company, and browse modes.

***

### More Actors like this

Need another B2B marketplace, industrial directory, or a different vertical? Use a **dedicated Actor** below for structured fields. Use this Actor for **Thomasnet** (`www.thomasnet.com`) US industrial suppliers.

#### Similar e-commerce & B2B scrapers

- [Europages Scraper](https://apify.com/lentic_clockss/europages-scraper)
- [GlobalSources Scraper](https://apify.com/lentic_clockss/globalsources-scraper)
- [IndiaMART Scraper](https://apify.com/lentic_clockss/indiamart-scraper)
- [iPROS Scraper](https://apify.com/lentic_clockss/ipros-scraper)
- [Kompass Scraper](https://apify.com/lentic_clockss/kompass-scraper)
- [1688 Global Product Search Scraper](https://apify.com/lentic_clockss/1688-global-scraper)
- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Coupang Product Scraper](https://apify.com/lentic_clockss/coupang-scraper)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)
- [Lazada Scraper](https://apify.com/lentic_clockss/lazada-ph-search-results-collector)
- [Rakuten Japan Scraper](https://apify.com/lentic_clockss/rakuten-scraper)

#### Prefer another specialized scraper?

If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic scrape.

**Jobs & Freelance**

- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)

**Real Estate**

- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)

**Travel & Stays**

- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

**Social & Content**

- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)

**Ads Intelligence**

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

**Local & Maps**

- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

**General Tools**

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ See the full catalog in [Related Actors](#related-actors) below, or browse [apify.com/lentic\_clockss](https://apify.com/lentic_clockss).

***

### How to scrape Thomasnet (no code required)

1. Create a free [Apify](https://apify.com/) account
2. Open [Thomasnet Scraper](https://apify.com/lentic_clockss/thomasnet-scraper)
3. Choose a **mode**: `supplier_search`, `heading`, `company`, or `browse`
4. Enter a **query** (e.g. `precision castings`) — or **headingSlug** + **headingId**, or a **companyUrl** / **tgramsId**
5. *(Optional)* Turn on `enrichDetails`, set `zip` / `radius`, `maxResults` / `maxPages`
6. Click **Start** and download the Dataset as JSON, CSV, Excel, or JSONL

Start with `maxResults: 5–15` to verify the query, then scale up.

***

### How much does it cost to scrape Thomasnet?

This Actor uses **pay-per-event** pricing. You are charged for:

| Event | Price |
| --- | --- |
| Actor Start (`apify-actor-start`) | **$0.005** per start |
| Result (`apify-default-dataset-item`) | **$3.00 / 1,000** results (**$0.003** each on FREE/BRONZE) |

**Platform usage costs are included** — you do **not** pay separate Apify compute/proxy usage for this Actor on top of the event prices above (**User pays platform usage costs = No**).

#### Volume discount tiers (per result)

| Tier | $/1,000 | per result |
| --- | ---: | ---: |
| FREE\* | $3.00 | $0.003 |
| BRONZE | $3.00 | $0.003 |
| SILVER | $2.60 | $0.0026 |
| GOLD | $2.20 | $0.0022 |
| PLATINUM | $2.00 | $0.002 |
| DIAMOND | $1.60 | $0.0016 |

\*FREE matches BRONZE for this Actor.

#### Example cost estimates (FREE/BRONZE)

| Results collected | Approx. event cost\* |
| --- | ---: |
| 100 | ~$0.31 |
| 1,000 | ~$3.01 |
| 10,000 | ~$30.01 |

\*Assumes one Actor start at default memory billing for start events, plus `$0.003` per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one).

#### Free plan limits

On a **free Apify plan**, this Actor enforces developer limits of **10 runs** and **200 results per run**. Upgrade to a paid Apify plan for unlimited runs (event prices still apply). These limits are set by the Actor developer, not by Apify.

***

### Input examples

#### Supplier keyword search

```json
{
  "mode": "supplier_search",
  "query": "precision castings",
  "maxResults": 20,
  "maxPages": 1
}
```

#### Heading / category list

```json
{
  "mode": "heading",
  "headingSlug": "cnc-machining",
  "headingId": "45330503",
  "maxResults": 25
}
```

#### Company profile

```json
{
  "mode": "company",
  "companyUrl": "https://www.thomasnet.com/company/electro-plastics-30989688/profile"
}
```

#### ZIP + radius filter (search)

```json
{
  "mode": "supplier_search",
  "query": "sheet metal fabrication",
  "zip": "44114",
  "radius": "50",
  "maxResults": 15
}
```

***

### Output example

```json
{
  "tgramsId": "12345678",
  "name": "Example Fabricators, Inc.",
  "title": "Example Fabricators, Inc.",
  "url": "https://www.thomasnet.com/company/example-fabricators-12345678/profile",
  "website": "https://www.example-fabricators.com",
  "annualSales": "$10 - 24.9 Mil",
  "numberEmployees": "50-99",
  "yearFounded": "1987",
  "primaryPhone": "***-***-****",
  "source": "thomasnet.com"
}
```

Common fields also include address components, `capabilities`, `headings`, and tier / advertiser flags when present on the page.

***

### Coverage matrix

| Dimension | Coverage |
| --- | --- |
| Market | `usa` (`www.thomasnet.com`) |
| Modes | `supplier_search` · `heading` · `company` · `browse` |
| List | `/suppliers/search` · `/suppliers/usa/{slug}-{headingId}` |
| Detail | `/company/{slug}-{tgramsId}/profile` |
| Pagination | First page SSR (~25); extra pages via UI click (`maxPages`) — do not rely on `?page=` |
| Enrich | `enrichDetails` → company profile fields |
| Geo | optional `zip` + `radius` |
| Filters | optional `filterIds[]` passthrough |

***

### FAQ

#### Is this affiliated with Thomasnet?

No. This is an **unofficial** third-party Actor. It is not affiliated with, endorsed by, or sponsored by Thomas Publishing / Thomasnet.

#### Do you collect emails or click Contact Supplier?

No. The Actor does **not** auto-click Contact Supplier, Claim, Register, or Sign In. Phones are redacted by default (`redactPhones: true`).

#### Why is pagination limited?

Thomasnet’s SSR `?page=` query does **not** change the first-page company list. Extra pages require UI pagination (`maxPages`). GraphQL pagination is not exposed as a public Actor input.

#### Can I use this from the API / Standby?

Yes. Use normal Actor runs for production Dataset output. Standby exposes lightweight `/health`, `/input-example`, `/openapi.json`, and optional preview routes — see the Standby OpenAPI schema packaged with the Actor.

#### What are the free plan limits?

You get up to **10 runs** of this Actor and **200 results per run** (limits set by the Actor developer). Paying Apify users are not capped by those run quotas; PPE event prices still apply.

***

### Tips for better runs

- Prefer specific industrial keywords (`precision castings`, `cnc machining`) over single vague words
- Keep `maxResults` modest first; list pages return ~25 suppliers per SSR page
- Use `enrichDetails` only when you need deeper company profile fields
- For headings, pass both `headingSlug` and `headingId` when you have them
- Do not reuse README sample inputs for acceptance tests — use fresh random-valid queries

***

### Integrations

- **Apify API / client** — start runs and pull Dataset items programmatically
- **Schedules** — re-run keyword monitors daily/weekly
- **Webhooks** — notify your stack when a run finishes
- **Make / Zapier / n8n** — push rows to Sheets, CRM, Slack, or warehouses

***

### Standby (Live view)

When Standby is enabled:

- `GET /` / `GET /health` — Actor readiness (no scrape)
- `GET /input-example` — safe low-cost example input
- `GET /openapi.json` — OpenAPI document
- `POST /search` — optional Live-view preview (capped `maxResults`); persist production results with a **normal Actor run**

Full jobs should be launched as normal Apify Actor runs so Dataset rows plus `INPUT_ECHO`, `RUN_SUMMARY`, and `ERROR_SUMMARY` are persisted.

***

### Runtime

| Setting | Value |
| --- | --- |
| Default memory | **1024 MB** |
| Timeout default | **3600 s** |
| Standby | Enabled (lightweight Live-view) |
| Free plan caps | **10 runs** / **200 results** per run |

***

### Related Actors

All **77** public Actors from \[[lentic\_clockss](https://apify.com/lentic_clockss)]. Click a name to open the Store detail page.

#### Jobs & Freelance

- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Freelancer.com Scraper](https://apify.com/lentic_clockss/freelancer-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Himalayas Jobs Scraper](https://apify.com/lentic_clockss/himalayas-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Jobicy Remote Jobs Scraper](https://apify.com/lentic_clockss/jobicy-remote-jobs-scraper)
- [RemoteOK Jobs Scraper](https://apify.com/lentic_clockss/remoteok-all-jobs-scraper)
- [SEEK Jobs Scraper](https://apify.com/lentic_clockss/seek-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)

#### Real Estate

- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [99.co Scraper](https://apify.com/lentic_clockss/ninetynine-co-sg-scraper)
- [Realtor.com Agents Scraper](https://apify.com/lentic_clockss/realtor-com-agents-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Bayut Scraper](https://apify.com/lentic_clockss/bayut-uae-scraper)
- [Craigslist Housing Scraper](https://apify.com/lentic_clockss/craigslist-housing-scraper)
- [Daft.ie Scraper](https://apify.com/lentic_clockss/daft-property-scraper)
- [Dot Property Scraper](https://apify.com/lentic_clockss/dot-property-th-scraper)
- [FINN.no Scraper](https://apify.com/lentic_clockss/finn-scraper)
- [Funda Scraper](https://apify.com/lentic_clockss/funda-scraper)
- [Hepsiemlak Scraper](https://apify.com/lentic_clockss/hepsiemlak-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [Immobiliare.it Scraper](https://apify.com/lentic_clockss/immobiliare-property-scraper)
- [ImmoScout24 Scraper](https://apify.com/lentic_clockss/immobilienscout24-scraper)
- [Naver Land Scraper](https://apify.com/lentic_clockss/naver-land-scraper)
- [OpenSooq Scraper](https://apify.com/lentic_clockss/opensooq-real-estate-scraper)
- [Otodom Scraper](https://apify.com/lentic_clockss/otodom-scraper)
- [Property Finder Scraper](https://apify.com/lentic_clockss/property-finder-uae-scraper)
- [PropertyGuru Scraper](https://apify.com/lentic_clockss/propertyguru-sg-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)
- [Realtor.ca Scraper](https://apify.com/lentic_clockss/realtor-ca-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [SeLoger Scraper](https://apify.com/lentic_clockss/seloger-property-scraper)
- [SUUMO Scraper](https://apify.com/lentic_clockss/suumo-property-scraper)
- [Zillow Group Scraper](https://apify.com/lentic_clockss/zillow-group-scraper)

#### E-commerce

- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [E-commerce Scraper](https://apify.com/lentic_clockss/ecommerce-scraper)
- [1688 Global Product Search Scraper](https://apify.com/lentic_clockss/1688-global-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [ASOS Product Scraper](https://apify.com/lentic_clockss/asos-scraper)
- [Cdiscount Product Scraper](https://apify.com/lentic_clockss/cdiscount-scraper)
- [Costco Product Scraper](https://apify.com/lentic_clockss/costco-scraper)
- [Coupang Product Scraper](https://apify.com/lentic_clockss/coupang-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Lazada Scraper](https://apify.com/lentic_clockss/lazada-ph-search-results-collector)
- [MercadoLibre Scraper](https://apify.com/lentic_clockss/mercadolibre-scraper)
- [Mercari Japan Scraper](https://apify.com/lentic_clockss/mercari-scraper)
- [Rakuten Japan Scraper](https://apify.com/lentic_clockss/rakuten-scraper)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)

#### Travel & Stays

- [Booking.com & Airbnb Scraper](https://apify.com/lentic_clockss/booking-airbnb-scraper)
- [Agoda Scraper](https://apify.com/lentic_clockss/agoda-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Despegar Scraper](https://apify.com/lentic_clockss/despegar-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [Traveloka Scraper](https://apify.com/lentic_clockss/traveloka-scraper)
- [Travelstart Flights Scraper](https://apify.com/lentic_clockss/travelstart-scraper)
- [Trip.com Scraper](https://apify.com/lentic_clockss/trip-com-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

#### Social & Content

- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)
- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [Hacker News Scraper](https://apify.com/lentic_clockss/hacker-news-scraper)

#### Ads Intelligence

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [Google Ads Transparency VN](https://apify.com/lentic_clockss/google-ads-transparency-center-vn)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

#### Local & Maps

- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

#### General Tools

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ Browse the full profile: [apify.com/lentic\_clockss](https://apify.com/lentic_clockss)

# Actor input Schema

## `mode` (type: `string`):

supplier\_search | heading | company | browse

## `market` (type: `string`):

Thomasnet market (USA industrial directory)

## `query` (type: `string`):

Keyword for mode=supplier\_search, e.g. cnc machining

## `searchQueries` (type: `array`):

Optional list of keywords

## `headingSlug` (type: `string`):

Category slug for mode=heading, e.g. cnc-machining

## `headingId` (type: `string`):

Numeric heading id, e.g. 45330503

## `tgramsId` (type: `string`):

Thomas company id for mode=company

## `companySlug` (type: `string`):

Optional URL slug, e.g. electro-plastics

## `companyUrl` (type: `string`):

Full /company/{slug}-{tgramsId}/profile URL

## `detailUrls` (type: `array`):

Company profile URLs for mode=company

## `startUrls` (type: `array`):

Thomasnet search, heading, or company URLs

## `filterIds` (type: `array`):

Optional filter ids from pageProps.filters (passthrough)

## `zip` (type: `string`):

Optional geo search ZIP

## `radius` (type: `string`):

Optional geo radius (miles) with zip

## `maxResults` (type: `integer`):

Maximum records to return (free plan capped at 200)

## `maxPages` (type: `integer`):

List pages via UI click (SSR ?page= is ineffective). Default 1 = first 25 SSR rows.

## `enrichDetails` (type: `boolean`):

When true on list modes, fetch company profiles for up to min(maxResults,20) rows

## `redactPhones` (type: `boolean`):

Mask primaryPhone in output (default on)

## `includeStreet` (type: `boolean`):

Include address1/2/3 (default off)

## `workerBaseUrl` (type: `string`):

Optional HTTPS Cloud Run URL (allowlisted). Prefer Actor env WORKER\_BASE\_URL.

## Actor input object example

```json
{
  "mode": "supplier_search",
  "market": "usa",
  "maxResults": 25,
  "maxPages": 1,
  "enrichDetails": false,
  "redactPhones": true,
  "includeStreet": false
}
```

# Actor output Schema

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

Normalized Thomasnet supplier / heading / company rows from the default dataset.

## `runSummary` (type: `string`):

Structured summary record stored in the default key-value store.

## `inputEcho` (type: `string`):

Normalized input saved at run start.

## `errorSummary` (type: `string`):

Present when a failed run stores structured terminal error information.

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/thomasnet-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 = {}

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/thomasnet-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call lentic_clockss/thomasnet-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lentic_clockss/thomasnet-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/79EJaRtXa1gp87mD3/builds/k58eDJm9oIhYBYOOJ/openapi.json
