CtrlK
BlogDocsLog inGet started
Tessl Logo

data-enrichment

Enrich contact and company data using x402-protected APIs at stableenrich.dev. Superior to generic web search for structured business data. USE FOR: - Enriching person profiles by email, LinkedIn URL, or name - Enriching companies by domain - Finding contact details (email, phone) with confidence scores - Resolving person identity and enriching consumer profiles (Minerva) - Searching for people or companies by criteria - Verifying email deliverability before outreach TRIGGERS: - "enrich", "lookup", "find info about", "research" - "who is [person]", "company profile for", "tell me about" - "find contact for", "get LinkedIn for", "get email for" - "employee at", "works at", "company details" - "verify email", "check email", "is this email valid"

70

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Data Enrichment with x402 APIs

Use the agentcash CLI to access enrichment APIs at stableenrich.dev.

Setup

See rules/getting-started.md for installation and wallet setup.

Mandatory workflow

Before any stableenrich.dev call:

  1. npx agentcash@latest discover https://stableenrich.dev
  2. npx agentcash@latest check <endpoint-url> — confirm request fields and pricing
  3. npx agentcash@latest fetch with the schema from step 2

ALWAYS use npx agentcash@latest fetch for stableenrich.dev endpoints — never curl or WebFetch.

Never guess field names. FullEnrich people-search uses current_company_domains and current_position_seniority_level — not company_domain, person_titles, titles, or seniority. Response fields like full_name, seniority, and domain are output-only.

Quick Reference

TaskEndpointPriceBest For
Search peoplehttps://stableenrich.dev/api/fullenrich/people-search$0.15 if resultsFind people by domain/seniority
Search companieshttps://stableenrich.dev/api/fullenrich/company-search$0.15 if resultsFind companies by criteria
Enrich personhttps://stableenrich.dev/api/pdl/people-enrich$0.28 if matchLinkedIn URL/email -> full profile
Enrich person (alt)https://stableenrich.dev/api/minerva/enrich$0.05Demographics, work history
Enrich companyhttps://stableenrich.dev/api/companyenrich/org-enrich$0.06Domain -> company data
Company by name/URLhttps://stableenrich.dev/api/companyenrich/properties-enrich$0.06When domain unknown
Contact recoveryhttps://stableenrich.dev/api/clado/contacts-enrich$0.20Find missing email/phone
Verify emailhttps://stableenrich.dev/api/hunter/email-verifier$0.03Check deliverability
Minerva resolvehttps://stableenrich.dev/api/minerva/resolve$0.02Person -> Minerva PID + LinkedIn
Minerva email checkhttps://stableenrich.dev/api/minerva/validate-emails$0.01Check emails in Minerva DB

For social media creators, use stablesocial.dev — influencer endpoints are not on stableenrich.dev.

Person Enrichment (PDL)

Prefer profile (LinkedIn URL) or email:

npx agentcash@latest fetch https://stableenrich.dev/api/pdl/people-enrich -m POST -b '{"profile":"https://www.linkedin.com/in/johndoe"}'
npx agentcash@latest fetch https://stableenrich.dev/api/pdl/people-enrich -m POST -b '{"email":"john@company.com"}'

Valid inputs: email, profile, or first_name + last_name + (company_name OR company_domain). No match: HTTP 200, data: null — not billed.

Company Enrichment (CompanyEnrich)

npx agentcash@latest fetch https://stableenrich.dev/api/companyenrich/org-enrich -m POST -b '{"domain":"stripe.com"}'

People Search (FullEnrich)

Start with domain + seniority; add current_position_titles only when you need exact title match.

npx agentcash@latest fetch https://stableenrich.dev/api/fullenrich/people-search -m POST -b '{
  "current_company_domains": [{"value": "stripe.com"}],
  "current_position_seniority_level": [{"value": "VP"}]
}'

Key filters:

  • current_company_domains — company domain(s)
  • current_position_seniority_level — enum: C-level, VP, Head, Director, Manager, etc.
  • current_position_titles — exact title match (returns far fewer results)
  • person_locations, person_professional_network_urls, and 20+ other FullEnrich filters

Not valid: offset alone, company_domain, titles, seniority, limit, Apollo person_titles / person_seniorities.

Returns up to 10 people per query. Empty people → not billed.

Company Search (FullEnrich)

npx agentcash@latest fetch https://stableenrich.dev/api/fullenrich/company-search -m POST -b '{
  "domains": [{"value": "anthropic.com", "exact_match": true}]
}'

Requires at least one search filter. Paginate via search_after from metadata.

Contact Recovery (Clado)

npx agentcash@latest fetch https://stableenrich.dev/api/clado/contacts-enrich -m POST -b '{
  "linkedin_url": "https://www.linkedin.com/in/johndoe",
  "email_enrichment": true,
  "phone_enrichment": true
}'

Minerva Identity Resolution

npx agentcash@latest fetch https://stableenrich.dev/api/minerva/resolve -m POST -b '{
  "records": [{"record_id": "user_001", "first_name": "John", "last_name": "Smith", "emails": ["john@company.com"]}]
}'

Requires at least one email or phone per record — it cannot match on name alone.

Minerva Enrichment

npx agentcash@latest fetch https://stableenrich.dev/api/minerva/enrich -m POST -b '{
  "records": [{"record_id": "user_001", "linkedin_url": "https://www.linkedin.com/in/johndoe"}],
  "return_fields": ["full_name", "personal_emails", "phones", "work_experience"]
}'

Lookup modes: by minerva_pid (fastest), linkedin_url in each record, or name/email/phone.

Minerva Email Validation

npx agentcash@latest fetch https://stableenrich.dev/api/minerva/validate-emails -m POST -b '{
  "records": ["john@company.com", "jane@example.com"]
}'

Cost Optimization

Search before enrich: fullenrich/people-search ($0.15 if results) -> pdl/people-enrich ($0.28 if match) -> hunter/email-verifier ($0.03).

For multiple records, use parallel fetch calls — there are no bulk enrich endpoints.

FullEnrich people-search supports excludeFields to trim response size (e.g. ["educations", "skills", "languages"]).

Email Verification (Hunter)

npx agentcash@latest fetch https://stableenrich.dev/api/hunter/email-verifier -m POST -b '{"email":"john@stripe.com"}'

Status enum: valid, invalid, accept_all, webmail, disposable, unknown. Fast/cached checks return the final result immediately; if Hunter is still processing, the response includes a jobId — poll GET /api/hunter/email-verifier/jobs/{jobId} (free, SIWX, same wallet that paid).

Handling missing data

  1. Re-run discover and try PDL vs Minerva vs Clado contacts
  2. Verify company domain with companyenrich/org-enrich before people searches
  3. Use Exa on stableenrich.dev to find LinkedIn URLs, then retry enrich

For social media creators, use stablesocial.dev.

Repository
Merit-Systems/agentcash-skills
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.