← toutes les doctrines
gtmoto

Enrich a Contact List, With Fallback

A batch of partial contacts gets a real email and phone where one exists — a second provider covering what the first missed, every real gap flagged rather than dropped.

connecteurs utilisés

DropcontactDropcontact2
KasprKaspr1

Enrich a Contact List, With Fallback

When to use it: you have a batch of 1-250 partial contacts (email, LinkedIn identifier, or name + company) and want them enriched with a real email and phone — cheaply, with every genuine gap flagged instead of silently dropped.

              Natural language input in Claude
              "Enrich this list of 80 contacts with email and phone."
                         │
                         ▼
┌─────────────────────────────────────────────────┐
│  1 · Assemble the batch                         │
│  One identifying combination per contact,       │
│  each tagged with your own reference id.        │
└────────────────────────┬────────────────────────┘
                         ▼
┌─────────────────────────────────────────────────┐
│  2 · Submit and poll                            │   dropcontact_enrich
│  One batch call, not one per contact —          │   dropcontact_result
│  the result comes back async.                   │
└────────────────────────┬────────────────────────┘
                         ▼
┌─────────────────────────────────────────────────┐
│  3 · Backfill missing emails                    │   kaspr_enrich_linkedin
│  Only the real misses, email only, through      │
│  a LinkedIn-based fallback.                     │
└────────────────────────┬────────────────────────┘
                         ▼
┌─────────────────────────────────────────────────┐
│  4 · Present the results, flagging gaps         │
│  One clean table — every unresolved contact     │
│  flagged, never silently dropped.               │
└─────────────────────────────────────────────────┘

1. Assemble the batch

Each contact needs at least one identifying combination: an email, a LinkedIn URL/slug, or a first name + last name + company. Attach your own reference id to every row — a batch call doesn't guarantee it returns rows in the order you sent them. Keep the LinkedIn identifier on hand for any contact that might need the fallback later. An under-specified contact doesn't fail the whole batch, only its own row.

2. Submit and poll for results

  • dropcontact_enrich — the whole batch in one call, split into chunks only if you're over the size limit. It returns a request id immediately; the enrichment runs async.
  • dropcontact_result — poll starting around 30 seconds after submission, then every 20-30 seconds until done.
  • Treat email quality labels literally: a personal verified email on the company's own domain is the best outcome, a generic mailbox is usable but weaker, anything marked invalid counts as no email at all.

3. Backfill missing emails through the fallback

  • kaspr_enrich_linkedin — for every contact still without a usable email that has a LinkedIn identifier, email only; don't spend credits pulling phone here. If it finds an email, mark its source as the fallback provider. If it finds nothing, or there's no LinkedIn identifier to fall back on, leave it blank and flag it in the final step — never drop the row.

4. Present the results, flagging gaps

One clean table: name, best-qualified email with its source, phone/mobile if found, and any company data the enrichment returned. Flag every contact where neither provider found a usable email — a flagged gap tells a human exactly who still needs manual work. This is a standalone step: it doesn't write anything back to a CRM unless that's asked for separately.

Output

Report: total contacts submitted, how many resolved on the first provider, how many needed the fallback and how many of those resolved, and the final list still missing an email.

forkez cette doctrine dans votre espace oto.

ajouter à oto