Industrial Supplier Intelligence | B2B Enrichment
Pricing
Pay per usage
Industrial Supplier Intelligence | B2B Enrichment
Enrich user-provided industrial supplier websites into procurement-ready B2B profiles with categories, capabilities, locations, certifications, contact pages, confidence, PPE charged events, and clear no-charge statuses.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
太郎 山田
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Industrial Supplier Intelligence
Turn user-provided industrial supplier websites into structured B2B supplier profiles for sourcing, procurement, supplier-risk review, and RFQ preparation. This actor is direct-source only: it fetches the supplier URLs and domains you provide and does not use search engines for discovery.
Use it when your team already has a target account list, supplier portal export, trade-show list, ERP vendor list, or shortlist from another workflow and needs consistent supplier facts before a buyer, analyst, or procurement system takes the next step.
Store Quickstart
Pick the smallest template that matches the buyer workflow:
- Quickstart - 2 Supplier Websites: lowest-friction proof run. Enrich two public supplier websites, write dataset rows, and inspect categories, capabilities, certifications, contact pages, confidence, status, and
chargedEvent. - Recurring Supplier Watch: schedule the same supplier list weekly or monthly. Compare
companyName,categories,capabilities,locations,certifications,contactPage,confidence, andstatusacross runs to catch changed public evidence. - Procurement Shortlist Enrichment: use supplier domains exported from procurement research, ERP, vendor master, or sourcing spreadsheets. Join the output back to your shortlist by
websiteorsourceUrls. - RFQ Vendor Prequalification: run candidate vendors before an RFQ. Route
successand usefulpartialrows to a buyer review queue; keep no-charge rows as list-cleanup tasks.
For production, start with dataset output in Apify. Once the row shape is accepted, downstream teams can send charged supplier rows to procurement tools, vendor-master enrichment, CRM/account intelligence, RFQ workspaces, or the public-sector Procurement Intel Actor when supplier intelligence should sit next to bid and award monitoring.
What It Does
- Normalizes supplier URLs and bare domains into direct fetch targets.
- Extracts public website signals for company name, industrial category, capabilities, locations, certifications, contact page, and source evidence.
- Uses buyer-provided
keywordsonly as local relevance hints against supplied pages. Keywords are not sent to search engines. - Emits one dataset row per supplied source, including no-charge diagnostic rows for invalid, blocked, not-found, and failed sources.
- Passes custom pay-per-event billing only for useful supplier intelligence rows.
Runtime And Delivery Guardrails
- Runtime: Node.js 20+ on Apify Actor Node 20.
dryRun: truevalidates inputs and output shape without dataset writes, webhook delivery, or custom PPE charges.- Production runs are dataset-first: dataset/PPE output completes before any webhook-style delivery hook is allowed to run.
- Keep webhook handoff disabled until downstream teams accept the dataset schema and no-charge diagnostic rows.
B2B Use Cases
| Buyer | Workflow | Value |
|---|---|---|
| Procurement teams | Enrich supplier shortlists before RFQ or onboarding | Faster vendor prequalification with consistent public evidence |
| Strategic sourcing | Refresh known supplier lists by category, geography, or certification | Recurring visibility into capability and certification signals |
| RevOps and data teams | Append supplier intelligence to CRM, vendor master, or account datasets | Clean row shape with confidence and billing status for automation |
| Industrial marketplaces | Normalize supplier profile fields from submitted websites | Categories, capabilities, contacts, and evidence URLs for listing review |
| Risk and diligence teams | Preserve blocked, not-found, and invalid rows | Transparent source quality without paying for unusable results |
Input
| Field | Type | Default | Description |
|---|---|---|---|
urls | string[] | [] | Specific supplier website URLs to enrich. Use public home, about, capabilities, products, certifications, or contact pages. |
domains | string[] | [] | Bare supplier domains. Domains are normalized to https://domain/ and fetched directly. |
keywords | string[] | [] | Industrial terms used only for local scoring and category/capability hints against supplied sources. |
region | string | "" | Optional buyer region or sourcing market, used as a location and relevance hint. |
maxResults | integer | 25 | Maximum normalized supplier sources to process and emit. |
Provide at least one value in urls or domains. V1 intentionally has no search engine discovery, no private portal access, and no authentication.
Input Example
{"urls": ["https://www.parker.com/","https://www.smcusa.com/"],"domains": [],"keywords": ["industrial automation","pneumatics","ISO 9001"],"region": "United States","maxResults": 2}
Output
The Apify dataset receives one row per requested source. Useful rows include supplier profile fields; diagnostic rows make invalid or unavailable sources visible for cleanup.
| Field | Type | Description |
|---|---|---|
companyName | string | null |
website | string | null |
categories | string[] | Industrial categories inferred from public text and keyword hints. |
capabilities | string[] | Capability terms such as CNC machining, assembly, automation, logistics, or private label. |
locations | string[] | Detected public location strings and optional region hint matches. |
certifications | string[] | Text-detected certifications such as ISO 9001, ISO 13485, IATF 16949, AS9100, UL, CE, RoHS, or REACH. |
contactPage | string | null |
sourceUrls | string[] | Source URLs used as evidence for the row. |
confidence | number | 0 to 1 score based on profile completeness and keyword evidence. |
status | string | success, partial, invalid, blocked, not_found, or error. |
chargedEvent | string | null |
Output Example
{"companyName": "Acme Industrial Manufacturing","website": "https://acme.example","categories": ["machining", "metal fabrication"],"capabilities": ["CNC machining", "milling", "welding", "assembly"],"locations": ["Cleveland, United States"],"certifications": ["ISO 9001:2015", "ROHS"],"contactPage": "https://acme.example/contact","sourceUrls": ["https://acme.example/"],"confidence": 0.9,"status": "success","chargedEvent": "supplier_profile_enriched"}
No-charge diagnostic rows stay in the dataset so list owners know which vendor records need repair:
{"companyName": null,"website": "https://missing-supplier.example/","categories": [],"capabilities": [],"locations": [],"certifications": [],"contactPage": null,"sourceUrls": ["https://missing-supplier.example/"],"confidence": 0,"status": "not_found","chargedEvent": null}
Pricing And No-Charge Rules
This actor is designed for custom pay-per-event pricing. It only charges when the row contains useful supplier intelligence.
| Status | Charged event | Charge | Meaning |
|---|---|---|---|
success | supplier_profile_enriched | Yes | Profile has enough evidence for analyst or procurement review. |
partial | supplier_partial | Yes | Some useful public evidence was found, but the profile is incomplete. |
invalid | null | No | Input was empty or could not be normalized into a public URL/domain. |
blocked | null | No | Source blocked the request or timed out. |
not_found | null | No | Source was missing, non-HTML, or did not contain useful supplier evidence. |
error | null | No | Fetch or processing failed. |
Recommended starting PPE pricing:
apify-actor-start:$0.001supplier_profile_enriched:$0.04supplier_partial:$0.015
When custom PPE is configured, omit the default dataset item event. The actor passes chargedEvent explicitly for charged rows and leaves no-charge rows as null.
Procurement Integration
A practical handoff looks like this:
- Export supplier domains from ERP, vendor master, procurement research, sourcing spreadsheets, or account lists.
- Run this actor with dataset delivery and keep
maxResultsaligned with the review batch size. - Filter rows where
chargedEventissupplier_profile_enrichedorsupplier_partial. - Send those rows to buyer review, RFQ workspaces, CRM/account enrichment, or vendor onboarding.
- Keep
invalid,blocked,not_found, anderrorrows as no-charge cleanup tasks. - For public-sector teams, combine enriched supplier rows with bid and award signals from Procurement Intel Actor.
API Usage
Run this actor programmatically using the Apify API. Replace YOUR_API_TOKEN with your token from Apify Console -> Settings -> Integrations.
cURL
curl -X POST "https://api.apify.com/v2/acts/taroyamada~industrial-supplier-intelligence/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{ "urls": ["https://www.parker.com/", "https://www.smcusa.com/"], "keywords": ["industrial automation", "pneumatics", "ISO 9001"], "region": "United States", "maxResults": 2 }'
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("taroyamada/industrial-supplier-intelligence").call(run_input={"urls": ["https://www.parker.com/", "https://www.smcusa.com/"],"keywords": ["industrial automation", "pneumatics", "ISO 9001"],"region": "United States","maxResults": 2,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["website"], item["status"], item["chargedEvent"])
JavaScript / Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('taroyamada/industrial-supplier-intelligence').call({urls: ['https://www.parker.com/', 'https://www.smcusa.com/'],keywords: ['industrial automation', 'pneumatics', 'ISO 9001'],region: 'United States',maxResults: 2,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.map((row) => ({ website: row.website, status: row.status, chargedEvent: row.chargedEvent })));
Limits
- No search engine discovery in V1.
- No authentication, paywall bypassing, private portal access, or private supplier data collection.
- Public HTML extraction only; JavaScript-heavy supplier sites may return partial or no-charge statuses.
- Certifications are text-detected and should be verified against source pages before procurement decisions.
- The actor does not decide supplier approval. It creates structured evidence for procurement and analyst review.
Local Run
npm installnpm startnpm test