La Growth Machine Lead Finder & Enrichment avatar

La Growth Machine Lead Finder & Enrichment

Pricing

from $0.01 / 1,000 results

Go to Apify Store
La Growth Machine Lead Finder & Enrichment

La Growth Machine Lead Finder & Enrichment

Find people matching your ideal customer profile, enrich them with verified professional emails via the La Growth Machine API, and populate an LGM audience ready for outreach. Also enriches lead lists, existing LGM audiences, or any other Actor’s dataset.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

Sameh George Jarour

Sameh George Jarour

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Find the people who match your ideal customer profile, enrich them with verified professional emails through the La Growth Machine API, and drop them straight into an LGM audience — ready for your outreach campaigns. Bring your own LGM API key; everything runs in your own account.

What does La Growth Machine Lead Finder & Enrichment do?

This Actor is a lead generation and email enrichment pipeline for La Growth Machine users. You describe who you want to reach — job title, seniority, department, location — and the Actor does the rest:

🔎 Finds people matching your ICP on LinkedIn, with no LinkedIn login or cookie required — or scores a list of company websites and takes contacts only from the ones that qualify

✉️ Enriches them through the official La Growth Machine API — professional email, personal email, phone number, and LGM's own deliverability verdict

📥 Populates your LGM audience — creates it if it doesn't exist, then writes every lead into it so your campaigns can pick them up

📊 Returns a clean dataset with the outcome and reason for every single lead

It is not a LinkedIn scraper you have to babysit, and it is not a generic email guesser. It is a La Growth Machine API alternative to manual prospecting: the sourcing, the enrichment and the audience-building happen in one run.

Why use this Actor instead of prospecting by hand?

Building a campaign audience normally means three disconnected tools: something to find people, something to find their emails, and a CSV you import by hand. Each hand-off loses data and costs a morning.

  • One run, one audience. ICP in, populated LGM audience out.
  • It protects your LGM credits. Enrichment costs real money per lead, so the Actor checks your balance first, skips leads that already have an email, drops profiles too thin to match, and refuses to start a run that would blow a cap you set.
  • Every miss is explained. No silent gaps — each row says whether it was enriched, not found, skipped, or failed, and why.
  • Chains onto anything. Point it at any other Actor's dataset and common column names map automatically.
  • Runs on the Apify platform, so you get scheduling, a REST API, webhooks, monitoring, and integrations with Make, Zapier, n8n and Google Sheets for free.
  • Real-time mode. It also runs as an HTTP service for enriching a single lead on demand from your own app.

Who is it for?

SDRs and growth marketers who already run outbound in La Growth Machine and want to stop hand-building audiences. You need an LGM account and an API key. You do not need to write any code.

What data can this Actor extract?

FieldTypeDescription
firstname, lastnamestringThe person's name
companyNamestringTheir current company
companyUrlstringCompany website, when known
linkedinUrlstringLinkedIn profile URL
proEmailstringProfessional email found by La Growth Machine
emailStatusstringLGM's deliverability verdict, when it returns one. Often absent — check proEmail itself
persoEmailstringPersonal email, when LGM finds one
phonestringPhone number, when LGM finds one
enrichStatusstringWhat enrichment did: enriched, not_found, pending, not_enriched, enrichment_unavailable, skipped or failed
enrichMessagestringWhy a lead was not enriched
lgmSyncStatusstringWhether the lead reached your LGM audience: synced, sync_failed, sync_disabled or not_synced
lgmSyncMessagestringWhy a lead was not synced
creditsUsednumberLGM credits this row consumed
writtenBackToLgmbooleanConvenience flag, true when lgmSyncStatus is synced
enrichRequestIdstringLGM's request id, to cross-reference your LGM API logs
sourceobjectThe original source row, untouched

How to find and enrich leads for La Growth Machine

  1. Get your API key from app.lagrowthmachine.com/settings/api (you must be logged in).
  2. Paste it into the La Growth Machine API key field. It is stored encrypted.
  3. Describe your ICP — job title, location, seniority levels, job functions, or free-text keywords.
  4. Name the audience you want populated in the LGM audience to populate field. It is created if it doesn't exist.
  5. Set a safety cap — start with maxLeads of 10 for a cheap first run.
  6. Click Start and watch the log. When it finishes, open the Output tab, or check the audience in your LGM account.

Example input

{
"lgmApiKey": "<your LGM API key>",
"leadSource": "icpSearch",
"targetAudience": "Q3 - Heads of Growth, France",
"icpJobTitle": ["Head of Growth", "VP Marketing"],
"icpLocation": "France",
"icpSeniorityLevels": ["Director", "VP", "CXO"],
"icpJobFunctions": ["Marketing", "Sales"],
"maxProfilesToDiscover": 50,
"enrichType": "EMAIL_ENRICH",
"maxCreditsToSpend": 250
}

See the Input tab for every option with inline documentation.

How much does it cost to find and enrich leads?

Two separate meters run, and it is important to understand both.

Apify platform cost

You pay for compute time, plus the LinkedIn people-search Actor when you use ICP search (roughly $0.004 per profile discovered, plus a small start fee). A 50-lead discovery run typically lands around $0.25. Apify's free tier covers a lot of experimentation.

La Growth Machine credits

Enrichment is billed by LGM, against your own account, not by Apify:

enrichTypeWhat you getLGM creditsWorks on brand-new people?
EMAIL_ENRICH (default)Professional email + deliverability5 per lead✅ Yes
NONESourcing and audience-building only0✅ Yes
LINKEDIN_ENRICHRefreshed LinkedIn profile fields1 per lead❌ Needs an existing LGM lead
FULL_ENRICHLinkedIn profile + email5 per lead❌ Needs an existing LGM lead

LGM charges credits whether or not a match is found, so the Actor works hard not to waste them:

  • ⛔ Balance check first — a run that cannot be paid for stops before spending anything on discovery.
  • 🧢 maxCreditsToSpend refuses to start a run whose worst case exceeds your cap.
  • ⏭️ skipAlreadyEnriched (on by default) passes through leads that already have a professional email, for free.
  • 🎯 requireCompany (on by default) drops discovered profiles with no company, because LGM matches on name + company and those attempts rarely land.
  • 🔢 maxLeads caps any run for a cheap trial.

Want to build audiences for free?

Set enrichType to NONE. The Actor finds people matching your ICP and writes them into your LGM audience without spending a single LGM credit. Useful for building audiences you'll enrich later, or if your plan doesn't include the enrichment API.

Where can the leads come from?

ICP search is the default, but you can feed the Actor leads you already have.

leadSourceUse it whenRequires
icpSearch (default)You want new people matching a profileAt least one ICP field (icpJobTitle, icpLocation, icpSeniorityLevels, icpJobFunctions, icpCompany, icpKeywords)
leadScorerYou have company websites and want only the ones that fit, with contactsscorerCompanyUrls
lgmLinkedinImportYou have a LinkedIn or Sales Navigator search URL and want LGM to import it nativelylinkedinSearchUrl, lgmIdentityId, targetAudience
leadListYou have a list to pasteleads
lgmAudienceYou want to fill email gaps in an audience you already haveaudienceId

How to score companies first, then enrich only the good ones

Set leadSource to leadScorer. The Actor runs Lead Scorer & Enricher as a child job: it scores each company website against your rules, discovers department contacts at the ones that qualify, and hands those contacts straight into LGM enrichment. One run, no copying data between tools.

{
"leadSource": "leadScorer",
"targetAudience": "Q3 - SaaS marketing leads",
"leadScorer": {
"companyUrls": ["https://acme.com", "https://globex.com"],
"techScoringRules": [{ "tech": "Shopify", "weight": 10 }],
"contentScoringRules": [{ "question": "Does the homepage describe a SaaS or platform business?", "weight": 8 }],
"qualificationThreshold": 8,
"targetDepartments": ["marketing", "sales"],
"maxLeadsPerCompany": 3
},
"maxScorerSpendUsd": 10
}

Only companies scoring at or above qualificationThreshold reach contact discovery, and only their contacts reach LGM — so weak accounts cost you neither Apify credit nor LGM credits. Leave techScoringRules and contentScoringRules empty to skip the paid tech-detection and homepage-crawl steps entirely; every company then qualifies on the threshold alone.

maxScorerSpendUsd caps what the scorer may spend on Apify. It is separate from maxCreditsToSpend, which caps La Growth Machine enrichment — the two budgets are independent.

You always get your leads

La Growth Machine being unavailable never costs you the run. If your credits run out, your plan doesn't cover the enrichment API, or a sync call is rejected, the Actor keeps going and still hands you every lead it found. What happened is recorded per row in two independent columns rather than swallowed in a failure.

enrichStatus — what enrichment managed to do:

ValueMeaningCredits
enrichedLGM returned contact details5
not_foundLGM ran the lookup and found nothing5
pendingLGM accepted it but had not finished when the run ended — may still complete5
not_enrichedYou set enrichType to NONE0
enrichment_unavailableLGM refused: no credits, or the plan doesn't include the enrichment API0
skippedNot attempted — already had an email, or too little data0
failedThe request errored for that one lead0

lgmSyncStatus — whether the lead reached your audience:

ValueMeaning
syncedWritten into your LGM audience
sync_failedLGM rejected the write. lgmSyncMessage says why — retry these
sync_disabledWrite-back was off for this run
not_syncedNothing worth writing, e.g. the lead itself failed

The two are deliberately separate. A lead can land in your audience even when enrichment was unavailable, and enrichment can succeed while the sync fails. Filter on either column independently.

Only two things actually fail a run: an input you need to fix, or an LGM key that can't be authenticated when the leads themselves have to come from LGM. Everything else degrades and still delivers.

Output example

You can download the dataset in JSON, CSV, Excel, HTML, or XML from the Output tab, or pull it through the Apify API.

[
{
"firstname": "Jean",
"lastname": "Dupont",
"companyName": "Acme Corp",
"companyUrl": "https://acme.com",
"linkedinUrl": "https://www.linkedin.com/in/jeandupont",
"proEmail": "jean.dupont@acme.com",
"emailStatus": "VALID",
"persoEmail": null,
"phone": "+33612345678",
"enrichStatus": "enriched",
"enrichMessage": null,
"lgmSyncStatus": "synced",
"lgmSyncMessage": null,
"creditsUsed": 5,
"writtenBackToLgm": true
},
{
"firstname": "Marie",
"lastname": "Martin",
"companyName": "TechStart",
"proEmail": null,
"emailStatus": null,
"enrichStatus": "not_found",
"enrichMessage": "LGM completed the request but found no contact details for this lead.",
"lgmSyncStatus": "synced",
"lgmSyncMessage": null,
"creditsUsed": 5,
"writtenBackToLgm": true
},
{
"firstname": "Paul",
"lastname": "Bernard",
"companyName": "Globex",
"proEmail": null,
"enrichStatus": "enrichment_unavailable",
"enrichMessage": "La Growth Machine refused the enrichment: \"Please upgrade to enrich leads.\" ...",
"lgmSyncStatus": "synced",
"lgmSyncMessage": null,
"creditsUsed": 0,
"writtenBackToLgm": true
}
]

The Output tab has five views: Enriched leads (everything), Contactable only (rows with a professional email), Synced to LGM, Not synced to LGM (with the reason, so you know what to retry), and Enrichment problems. Open the last two first whenever results look thin — they give the reason per row.

A SUMMARY record in the key-value store reports the two halves separately: an enrichment block (counts per status, hit rate, lgmCreditsBilled measured from your real balance before and after the run, the lgmCreditsEstimated upper bound, plus available and unavailableReason when enrichment was skipped) and an lgmSync block (synced, failed, not synced, and the target audience).

lgmCreditsBilled is measured as the difference between your LGM balance at the start and end of the run, because LGM does not report per-request billing. That makes it accurate for a single run, but not when several runs share one API key at the same time — concurrent runs each see the others' spend and over-report. Use lgmCreditsEstimated (list price x billable leads) as the per-run upper bound in that case.

Real-time enrichment API

The Actor also runs in Standby mode as an always-on HTTP service, for enriching one lead at a time from your own application:

curl -X POST "https://<username>--lgm-lead-enrichment.apify.actor/enrich" \
-H "Authorization: Bearer <APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"lead": {"firstname": "Jean", "lastname": "Dupont", "companyName": "Acme"}}'

GET /credits returns your current LGM balance. Full endpoint documentation renders in the Standby tab.

Tips for better results

  • Target several job titles at once. icpJobTitle takes a list — ["Head of Growth", "VP Marketing", "Demand Generation Manager"]. Each title is searched separately and the results are merged and de-duplicated, which is the reliable way to cover a buyer persona whose title varies by company. Each title is its own search on Apify, and maxProfilesToDiscover is split across them, so the profile budget stays fixed as you add titles.
  • Give LGM a company. Email enrichment matches on name + company. Leads with only a name rarely resolve, and the attempt still costs 5 credits.
  • Location is a keyword, not a geo filter. Cookie-free search can return people outside your target location — or people whose surname simply matches it. Turn on strictLocationMatch to drop them, or set linkedinCookie for exact LinkedIn facets.
  • Most lookups are instant, a minority are not. La Growth Machine answers most enrichments on the first API call, but some take minutes. Those come back as pending rather than failed, never as a loss. When the lead already exists in LGM, LGM applies the result to the lead itself once it finishes — so re-read the audience shortly after and the emails will be there. For leads not yet in LGM, their request ids are saved to the PENDING_ENRICHMENTS record so you can collect the result without paying again. Either way, pending in the dataset understates the final hit rate.
  • Trial before you scale. Run with maxLeads: 10 and check the hit rate in SUMMARY before committing hundreds of credits.
  • Schedule it. Point it at a saved ICP and run it weekly to keep an audience topped up.

FAQ

Do I need a paid La Growth Machine plan?

You need an LGM account with API access for anything, and enrichment credits for EMAIL_ENRICH, LINKEDIN_ENRICH and FULL_ENRICH. If LGM answers 403 "Please upgrade to enrich leads.", your plan or credit balance doesn't cover the enrichment API.

The run still completes. The Actor switches to sourcing-only for the rest of the run, delivers every lead, syncs them to your audience, and marks each row enrichment_unavailable with the reason. Top up your credits and re-run to fill in the emails — or set enrichType: "NONE" to skip the attempt entirely.

No. ICP search runs cookie-free by default. Supplying a linkedinCookie is optional and only unlocks LinkedIn's exact geo, company and school filters.

Why did some leads come back without an email?

Check enrichStatus. LGM ran the lookup and found nothing (not_found — credits charged), the lead had too little identifying data to try (skipped — no credits), LGM refused enrichment for the whole account (enrichment_unavailable — no credits), or it is still working on it (pending). enrichMessage gives the specifics for each row.

Some leads say sync_failed. What now?

They're still in your dataset — nothing is lost. Open the Not synced to LGM view, read lgmSyncMessage for the cause, and re-run against those rows once it's resolved.

Can I run this on a schedule or from my own code?

Yes. Use the Schedules tab for recurring runs, or the API tab for the REST endpoints and ready-made code samples. It also works with Make, Zapier, n8n, and webhooks.

Where do I debug a failed enrichment?

Every LGM API call you make is logged at app.lagrowthmachine.com/settings/api with its status and result. The enrichRequestId in the output cross-references those logs directly.

Why is it slower than I expected?

LGM allows 50 API calls per 10 seconds per key, and the Actor deliberately stays under that so it never trips a rate limit. Raising concurrency will not push it past LGM's ceiling.

Your feedback

Found a bug, or want a source or field that isn't there? Open a ticket in the Issues tab — feature requests are welcome.

This Actor only processes data that people have chosen to share publicly, together with data already inside your own La Growth Machine account. It does not access private LinkedIn data and does not require your LinkedIn credentials.

Your results will contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not collect or process personal data unless you have a legitimate reason to do so, and you are responsible for how you use the output — including compliance with applicable law and with La Growth Machine's own terms. If you're unsure whether your reason is legitimate, consult your lawyers.