Domain to LinkedIn URL Resolver
Pricing
from $0.07 / 1,000 result extracteds
Domain to LinkedIn URL Resolver
Resolve company domains to LinkedIn company URLs with evidence for CRM enrichment, RevOps, sales prospecting, and lead-generation workflows.
Pricing
from $0.07 / 1,000 result extracteds
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Find LinkedIn company URLs from company domains with public evidence.
This Apify Actor turns a list of company domains into LinkedIn company page URLs for CRM enrichment, lead generation, sales operations, and account research workflows.
It is designed to be safe and practical: it checks public company websites first, optionally checks public search-result evidence, and never requires LinkedIn login credentials.
What does Domain to LinkedIn URL Resolver do?
Domain to LinkedIn URL Resolver maps website domains such as zapier.com, airtable.com, or stripe.com to public LinkedIn company page URLs.
For every input domain, the actor returns:
- ✅ The original input domain
- ✅ The normalized website domain
- ✅ The discovered LinkedIn company URL
- ✅ Resolution status
- ✅ Confidence score
- ✅ Evidence URL where the match was found
- ✅ Checked URLs for auditability
- ✅ Error details for invalid or unresolved domains
Who is it for?
Sales and data teams use domain-to-LinkedIn resolution before enrichment and outreach.
- 🧑💼 Sales operations teams cleaning CRM company records
- 📈 Growth teams preparing account-based marketing lists
- 🔍 Lead generation agencies enriching domain lists
- 🧰 RevOps teams matching domains to LinkedIn company profiles
- 🧪 Data teams building company identity graphs
- 🤖 Automation builders connecting Apify, HubSpot, Airtable, Clay, and Google Sheets
Why use this actor?
Many B2B workflows start with a company domain but need a LinkedIn company URL.
LinkedIn URLs help with:
- company research
- employee-count enrichment
- industry classification
- social proof checks
- account matching
- outbound personalization
- deduplication across data vendors
This actor focuses on the first step: resolving the URL with evidence.
How it works
The resolver uses an HTTP-first workflow.
- It normalizes each submitted domain.
- It checks the company homepage.
- It checks common public pages such as
/about,/company, and/contact. - It extracts outbound
linkedin.com/company/,linkedin.com/school/, andlinkedin.com/showcase/links. - If enabled, it checks public Bing search-result evidence.
- It returns one dataset row for every input.
Safe public-data approach
This actor does not scrape private LinkedIn data.
It does not need:
- LinkedIn cookies
- LinkedIn account credentials
- browser automation
- CAPTCHA solving
- private company-page details
If a domain cannot be resolved safely from public evidence, it is returned as unresolved.
Data output
| Field | Type | Description |
|---|---|---|
inputDomain | string | Original submitted domain or URL |
normalizedDomain | string/null | Parsed domain without leading www. |
homepageUrl | string/null | Normalized homepage URL |
linkedinUrl | string/null | Discovered LinkedIn company/school/showcase URL |
status | string | resolved, unresolved, or invalid |
confidence | number | Confidence score from 0 to 1 |
evidenceUrl | string/null | Page or search URL where evidence was found |
evidenceType | string | homepage_link, company_page_link, search_result, or none |
checkedUrls | array | Website/search URLs attempted |
error | string/null | Last validation or request issue |
resolvedAt | string | ISO timestamp |
Example output
{"inputDomain": "zapier.com","normalizedDomain": "zapier.com","homepageUrl": "https://zapier.com/","linkedinUrl": "https://www.linkedin.com/company/zapier/","status": "resolved","confidence": 0.95,"evidenceUrl": "https://zapier.com/","evidenceType": "homepage_link","checkedUrls": ["https://zapier.com/"],"error": null,"resolvedAt": "2026-06-18T00:00:00.000Z"}
How much does it cost to resolve domains to LinkedIn company URLs?
The actor uses pay-per-event pricing.
You pay a $0.005 start event for each run and a tiered per-result event for each processed domain saved to the dataset.
The BRONZE per-result price is $0.00010851, with lower prices on higher Apify tiers. This makes the cost predictable for CRM batches: one input domain equals one output row.
Input configuration
Company domains or URLs
Add domains in the domains field.
Examples:
zapier.comairtable.comhttps://stripe.comwww.notion.so
Use public search fallback
Enable includeSearchFallback to check public Bing evidence when the company website does not expose a LinkedIn link.
Disable it if you only want first-party website evidence.
Pages to check per domain
maxPagesPerDomain controls how many common public website paths are checked.
The actor tries pages in this order:
- homepage
- about
- about-us
- company
- contact
- contact-us
- team
How to use this actor
- Open the actor on Apify.
- Add your company domains to the input.
- Keep public search fallback enabled for higher coverage.
- Start the run.
- Export the dataset as CSV, JSON, Excel, or via API.
- Join the result back to your CRM or enrichment workflow.
Tips for best results
- ✅ Use company domains, not personal profile URLs.
- ✅ Include the canonical corporate domain when possible.
- ✅ Keep search fallback enabled for older websites with no footer social links.
- ✅ Filter by
status = resolvedbefore sending data to downstream automations. - ✅ Review lower-confidence
search_resultmatches before high-stakes campaigns.
Handling unresolved domains
Unresolved rows are not failures.
They mean the actor did not find safe public evidence within the configured checks.
You can:
- retry with search fallback enabled
- increase pages per domain
- manually review important accounts
- enrich the domain with another data vendor
Integrations
Common workflow patterns:
- 🧾 Upload a CSV of CRM domains and export resolved LinkedIn URLs.
- 🧱 Connect Apify dataset output to Airtable.
- 🧰 Send results to Clay, HubSpot, Pipedrive, or Salesforce via Make/Zapier.
- 🔁 Chain with another Apify actor for deeper company enrichment.
- 📊 Store evidence URLs in a data warehouse for audit trails.
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/domain-to-linkedin-url-resolver').call({domains: ['zapier.com', 'airtable.com'],includeSearchFallback: true});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('automation-lab/domain-to-linkedin-url-resolver').call(run_input={'domains': ['zapier.com', 'airtable.com'],'includeSearchFallback': True,})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~domain-to-linkedin-url-resolver/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"domains":["zapier.com","airtable.com"],"includeSearchFallback":true}'
MCP usage
Use the actor from MCP-compatible tools through Apify MCP Server.
MCP URL:
https://mcp.apify.com/?tools=automation-lab/domain-to-linkedin-url-resolver
CLI setup:
$claude mcp add apify 'https://mcp.apify.com/?tools=automation-lab/domain-to-linkedin-url-resolver'
JSON setup:
{"mcpServers": {"apify": {"command": "npx","args": ["-y", "@apify/actors-mcp-server", "--tools=automation-lab/domain-to-linkedin-url-resolver"],"env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }}}}
Example prompts:
- "Resolve these 50 company domains to LinkedIn company URLs."
- "Find LinkedIn company pages for the domains in this CSV and return unresolved rows separately."
- "Check which CRM accounts have homepage evidence for a LinkedIn company page."
Claude Desktop MCP setup
Add Apify MCP Server to Claude Desktop and include this actor tool:
{"mcpServers": {"apify": {"command": "npx","args": ["-y", "@apify/actors-mcp-server", "--tools=automation-lab/domain-to-linkedin-url-resolver"],"env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }}}}
Claude Code MCP setup
Use the hosted MCP URL:
$claude mcp add apify 'https://mcp.apify.com/?tools=automation-lab/domain-to-linkedin-url-resolver'
Then ask Claude Code to run enrichment tasks from your domain lists.
Data quality notes
The actor assigns higher confidence to first-party website links than to search-result matches.
Confidence guide:
0.95: LinkedIn link found on homepage0.90: LinkedIn link found on another company-owned page0.65: LinkedIn link found through public search fallback0: no match or invalid input
Legality
This actor processes public web pages and public search-result evidence.
You are responsible for using the output in accordance with applicable laws, platform terms, and your own compliance requirements.
The actor does not access private LinkedIn data and does not require LinkedIn credentials.
FAQ and troubleshooting
Why did a known company return unresolved?
The company website may not link to LinkedIn, may block automated HTTP requests, or may use a different brand/domain. Try enabling search fallback or checking the domain manually.
Why is the confidence lower for some rows?
Search-result evidence is less authoritative than a link found directly on the company website, so it receives a lower confidence score.
Can I submit LinkedIn URLs as input?
No. Submit company domains or website URLs. LinkedIn URLs are returned as output.
Related scrapers
Use this actor with other automation-lab actors:
- https://apify.com/automation-lab/linkedin-company-scraper
- https://apify.com/automation-lab/website-emails-scraper
- https://apify.com/automation-lab/bulk-company-domain-finder
Changelog
0.1
Initial version: HTTP-only domain-to-LinkedIn company URL resolution with public website evidence, optional public search fallback, confidence scores, and unresolved-row tracking.
Support
If you need another field or integration, open an issue on the actor page with sample input domains and the output you expected.