Entity OSINT Enricher - Company Intelligence avatar

Entity OSINT Enricher - Company Intelligence

Pricing

$25.00 / 1,000 entity enricheds

Go to Apify Store
Entity OSINT Enricher - Company Intelligence

Entity OSINT Enricher - Company Intelligence

Full OSINT intelligence report on any company: OFAC sanctions screening, corporate registry lookup, news sentiment analysis, and website contact extraction. Computes overall risk level. Built for compliance, KYC, due diligence, and AI agent workflows.

Pricing

$25.00 / 1,000 entity enricheds

Rating

0.0

(0)

Developer

George Kioko

George Kioko

Maintained by Community

Actor stats

0

Bookmarked

7

Total users

4

Monthly active users

11 hours ago

Last modified

Share

Apify Actor Users Runs Success Rate Pricing

Premium OSINT intelligence for any company or entity. Get sanctions screening, corporate registry data, news sentiment, and website contacts -- all in one API call at $0.025 per entity.

Enterprise OSINT platforms charge $10,000-$50,000+/year. This does the same core intelligence work for pennies.


How It Works

flowchart LR
A["Entity Names\n(companies, people)"] --> B["Sanctions\nScreening\n(OFAC SDN)"]
B --> C["Corporate\nRegistry\n(OpenCorporates)"]
C --> D["News\nSentiment\n(Google News)"]
D --> E["Contact\nExtraction\n(Website)"]
E --> F["OSINT\nReport"]
style A fill:#1a1a2e,stroke:#e94560,color:#fff
style B fill:#16213e,stroke:#e94560,color:#fff
style C fill:#16213e,stroke:#0f3460,color:#fff
style D fill:#16213e,stroke:#0f3460,color:#fff
style E fill:#16213e,stroke:#0f3460,color:#fff
style F fill:#1a1a2e,stroke:#00d2ff,color:#fff

4 Enrichment Modules

ModuleSourceWhat You Get
Sanctions ScreeningOFAC SDN List (18,000+ entries)Fuzzy-matched sanctions hits with confidence scores, programs, aliases
Corporate RegistryOpenCorporates (180+ jurisdictions)Legal name, jurisdiction, status, registration number, incorporation date
News SentimentGoogle News RSSRecent articles with positive/negative/neutral sentiment + overall summary
Contact ExtractionEntity WebsiteEmails, phone numbers, LinkedIn, Twitter, Facebook profiles

Each module can be toggled independently. Only enable what you need.


Architecture

flowchart TB
subgraph Input
IN["Entity Names Array"]
CFG["Module Toggles\n& Configuration"]
end
subgraph Processing["Enrichment Engine"]
direction TB
OFAC["OFAC SDN Parser\n(fast-xml-parser)"]
FUZZ["Fuzzy Matcher\n(Fuse.js + suffix stripping)"]
CORP["OpenCorporates\nAPI Client"]
NEWS["Google News RSS\nAggregator"]
SENT["Keyword Sentiment\nAnalyzer"]
WEB["HTTP Crawler\n(homepage + /contact)"]
CONT["Contact Extractor\n(regex: emails, phones, social)"]
RISK["Risk Score\nCalculator"]
end
subgraph Output
DS["Apify Dataset\n(structured JSON)"]
KV["Key-Value Store\n(summary report)"]
end
IN --> OFAC --> FUZZ
IN --> CORP
IN --> NEWS --> SENT
IN --> WEB --> CONT
CFG -.-> Processing
FUZZ --> RISK
CORP --> RISK
SENT --> RISK
CONT --> RISK
RISK --> DS
DS --> KV
style Processing fill:#0d1117,stroke:#30363d,color:#c9d1d9
style Input fill:#161b22,stroke:#30363d,color:#c9d1d9
style Output fill:#161b22,stroke:#30363d,color:#c9d1d9

For AI Agents & Developers

This actor returns structured JSON optimized for LLM consumption, AI agent pipelines, and automated compliance workflows. Compatible with the Apify MCP Server for Claude, GPT, CrewAI, and LangChain agents.

JavaScript (Node.js)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('george.the.developer/entity-osint-enricher').call({
entities: ['Huawei Technologies', 'Gazprom', 'Apple Inc'],
enableSanctions: true,
enableCorporateRegistry: true,
enableNews: true,
enableContacts: true,
matchThreshold: 70,
maxNewsArticles: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const entity of items) {
console.log(`\n=== ${entity.entity} | Risk: ${entity.overallRiskLevel} ===`);
if (entity.sanctions?.isSanctioned) {
console.log(` SANCTIONS HIT: ${entity.sanctions.matches.length} match(es)`);
console.log(` Top confidence: ${entity.sanctions.topConfidence}%`);
}
if (entity.corporate?.status) {
console.log(` Registry: ${entity.corporate.jurisdiction} - ${entity.corporate.status}`);
}
if (entity.news?.articleCount) {
console.log(` News: ${entity.news.articleCount} articles (${entity.news.sentiment.summary})`);
}
if (entity.contacts?.emails?.length) {
console.log(` Emails: ${entity.contacts.emails.join(', ')}`);
}
}

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("george.the.developer/entity-osint-enricher").call(run_input={
"entities": ["Huawei Technologies", "Gazprom", "Apple Inc"],
"enableSanctions": True,
"enableCorporateRegistry": True,
"enableNews": True,
"enableContacts": True,
"matchThreshold": 70,
"maxNewsArticles": 10,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
for entity in items:
print(f"\n=== {entity['entity']} | Risk: {entity['overallRiskLevel']} ===")
sanctions = entity.get("sanctions", {})
if sanctions.get("isSanctioned"):
print(f" SANCTIONS HIT: {len(sanctions['matches'])} match(es)")
for match in sanctions["matches"]:
print(f" - {match['matchedName']} ({match['confidence']}%)")
corporate = entity.get("corporate", {})
if corporate.get("status"):
print(f" Registry: {corporate['jurisdiction']} - {corporate['status']}")
news = entity.get("news", {})
if news.get("articleCount"):
print(f" News: {news['articleCount']} articles ({news['sentiment']['summary']})")
contacts = entity.get("contacts", {})
if contacts.get("emails"):
print(f" Emails: {', '.join(contacts['emails'])}")

cURL

# Start the actor run
curl -X POST \
"https://api.apify.com/v2/acts/george.the.developer~entity-osint-enricher/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"entities": ["Huawei Technologies", "Gazprom"],
"enableSanctions": true,
"enableCorporateRegistry": true,
"enableNews": true,
"enableContacts": true,
"matchThreshold": 70,
"maxNewsArticles": 10
}'
# Poll for completion, then fetch results (replace DATASET_ID from run response)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_APIFY_TOKEN"

Input Schema

flowchart LR
subgraph Required["Required"]
E["entities\nstring[]"]
end
subgraph Modules["Module Toggles"]
S["enableSanctions\ndefault: true"]
C["enableCorporateRegistry\ndefault: true"]
N["enableNews\ndefault: true"]
CT["enableContacts\ndefault: true"]
end
subgraph Config["Configuration"]
MT["matchThreshold\n40-100, default: 70"]
MN["maxNewsArticles\n1-50, default: 10"]
PX["proxyConfiguration\noptional"]
end
Required --> Modules --> Config
style Required fill:#d63384,stroke:#fff,color:#fff
style Modules fill:#0d6efd,stroke:#fff,color:#fff
style Config fill:#6610f2,stroke:#fff,color:#fff

Parameters

ParameterTypeRequiredDefaultDescription
entitiesstring[]Yes--Company names or domains to investigate
enableSanctionsbooleanNotrueScreen against OFAC SDN sanctions list (fuzzy match)
enableCorporateRegistrybooleanNotrueLookup OpenCorporates registry data (180+ jurisdictions)
enableNewsbooleanNotrueAggregate recent Google News articles with sentiment
enableContactsbooleanNotrueExtract website contacts (emails, phones, social)
matchThresholdintegerNo70Sanctions fuzzy match confidence threshold (40-100)
maxNewsArticlesintegerNo10Max news articles to retrieve per entity (1-50)
proxyConfigurationobjectNo--Apify proxy config for website scraping

Example Input

{
"entities": ["Huawei Technologies", "Gazprom", "Apple Inc"],
"enableSanctions": true,
"enableCorporateRegistry": true,
"enableNews": true,
"enableContacts": true,
"matchThreshold": 70,
"maxNewsArticles": 10
}

Output Format

Each entity produces a comprehensive OSINT report with computed risk level:

{
"entity": "Huawei Technologies",
"displayName": "Huawei Technologies",
"overallRiskLevel": "MEDIUM",
"sanctions": {
"isSanctioned": true,
"riskLevel": "MEDIUM",
"topConfidence": 72,
"matches": [
{
"matchedName": "HUAWEI TECHNOLOGIES CO., LTD.",
"confidence": 72,
"programs": ["CHINA-EO13959"],
"aliases": ["HUAWEI"],
"entityType": "entity"
}
],
"sdnListDate": "03/09/2026"
},
"corporate": {
"legalName": "HUAWEI TECHNOLOGIES CO., LTD.",
"companyNumber": "440301503201952",
"jurisdiction": "CN",
"status": "Active",
"incorporationDate": "1987-09-15",
"companyType": "Limited Liability Company",
"registeredAddress": "Bantian, Longgang District, Shenzhen",
"source": "Shenzhen Administration for Market Regulation"
},
"news": {
"articleCount": 10,
"sentiment": {
"summary": "Predominantly neutral",
"negative": 2,
"positive": 3,
"neutral": 5
},
"articles": [
{
"title": "Huawei launches new chip production facility",
"source": "Reuters",
"publishedAt": "Mon, 10 Mar 2026 14:30:00 GMT",
"snippet": "Huawei Technologies announced plans to expand..."
}
]
},
"contacts": {
"emails": ["support@huawei.com"],
"phones": ["+1-972-882-8888"],
"socialMedia": {
"linkedin": "https://linkedin.com/company/huawei",
"twitter": "https://twitter.com/Huawei"
}
},
"enrichedAt": "2026-03-22T12:00:00.000Z"
}

Output Fields Reference

FieldDescription
overallRiskLevelComputed risk: CRITICAL, HIGH, MEDIUM, LOW, or CLEAR
sanctions.isSanctionedWhether entity matches OFAC SDN list
sanctions.topConfidenceHighest fuzzy match confidence score (%)
sanctions.matches[].programsSanctions programs (e.g., CHINA-EO13959)
corporate.statusRegistration status: Active, Dissolved, Struck Off
corporate.jurisdictionCountry/state of incorporation
news.sentiment.summaryOverall sentiment: Predominantly positive/negative/neutral/mixed
contacts.emailsDiscovered email addresses
contacts.socialMediaLinkedIn, Twitter, Facebook, YouTube profiles

Use Cases

mindmap
root((Entity OSINT\nEnricher))
Compliance
KYC / KYB checks
OFAC sanctions screening
Anti-money laundering
Export control verification
Vendor onboarding
Due Diligence
M&A target research
Investor screening
Partner background checks
Pre-deal intelligence
Lead Generation
Prospect enrichment
Contact discovery
Company profiling
Market mapping
Risk Management
Supply chain risk
Reputation monitoring
News sentiment tracking
Geopolitical exposure
Counterparty risk

Pricing

flowchart LR
subgraph Cost["Flat Rate"]
P["$0.025\nper entity enriched"]
end
subgraph Examples["Volume Examples"]
E1["10 entities = $0.25"]
E2["100 entities = $2.50"]
E3["1,000 entities = $25"]
E4["10,000 entities = $250"]
end
Cost --> Examples
style Cost fill:#00c853,stroke:#fff,color:#000,font-weight:bold
style Examples fill:#f5f5f5,stroke:#ccc,color:#333
VolumeTotal CostPer Entity
1 entity$0.025$0.025
10 entities$0.25$0.025
100 entities$2.50$0.025
1,000 entities$25.00$0.025
10,000 entities$250.00$0.025

No subscriptions. No minimums. No hidden fees. Pay only for entities enriched.


Integrations

flowchart TB
subgraph Sources["Trigger From"]
API["REST API / cURL"]
SDK["Apify SDK\n(JavaScript / Python)"]
SCHED["Apify Scheduler\n(cron)"]
WH["Webhooks"]
ZAP["Zapier"]
MAKE["Make / Integromat"]
MCP["Apify MCP Server\n(AI Agents)"]
end
OSINT["Entity OSINT\nEnricher"]
subgraph Destinations["Send Results To"]
GS["Google Sheets"]
S3["AWS S3 / GCS"]
WH2["Webhook Endpoint"]
SLACK["Slack / Teams"]
DB["Database\n(PostgreSQL, MongoDB)"]
CRM["CRM\n(Salesforce, HubSpot)"]
LLM["LLM / AI Agent\n(Claude, GPT, CrewAI)"]
end
Sources --> OSINT --> Destinations
style OSINT fill:#e94560,stroke:#fff,color:#fff,font-weight:bold
style Sources fill:#161b22,stroke:#30363d,color:#c9d1d9
style Destinations fill:#161b22,stroke:#30363d,color:#c9d1d9

Entity OSINT Enricher vs DIY

CapabilityEntity OSINT EnricherDIY Approach
Sanctions screeningIncluded (OFAC SDN, fuzzy match, 18K+ entries)Download XML, parse, build fuzzy matcher
Corporate registryIncluded (OpenCorporates, 180+ jurisdictions)API key + custom integration per jurisdiction
News sentimentIncluded (Google News + keyword analysis)Build scraper + NLP sentiment pipeline
Contact extractionIncluded (emails, phones, social profiles)Crawler + regex patterns + ongoing maintenance
Risk scoringAutomatic (CRITICAL to CLEAR)Build weighted scoring model
Setup time0 minutes2-4 weeks
InfrastructureManaged (Apify cloud, auto-scaling)Your servers, your maintenance
Data freshnessSDN list fetched live each runManual updates or scheduled jobs
Cost per entity$0.025$0.10-0.50+ (infra + engineering time)
Scalability1 to 10,000+ entities per runLimited by your infrastructure

FAQ


Data Sources

SourceCoverageUpdate Frequency
OFAC SDN List18,000+ sanctioned entities worldwideFetched live each run
OpenCorporates180+ jurisdictions, 200M+ companiesUpdated regularly
Google News RSSGlobal news coverageReal-time
Entity WebsitesDirect HTTP extractionLive on each run

Run on Apify  |  Built by george.the.developer