Aller au contenu
NouveauDécouvrir comment
Amélioration

Failed enrichments now retry themselves

Contacts that fail to enrich for transient reasons now retry automatically on a schedule, bounded by an attempt cap and without charging you twice.

Prospects that fail to enrich no longer sit blank. When enrichment fails for a temporary reason, those contacts are now retried automatically on a regular schedule — without charging you a second time.

What changed

Enrichment sometimes fails for reasons that have nothing to do with the contact: a momentary timeout, a provider hiccup, a transient error in the middle of a run. In the past, a contact caught by one of those errors would simply stay unenriched. It sat there blank, and the only way to recover it was to notice the gap and trigger enrichment again by hand — easy to overlook across a large list, and easy to forget entirely.

Now there's a recovery process that runs on a regular schedule and cleans this up for you. Contacts whose enrichment failed due to a transient error are reset to pending and queued to be enriched again automatically. You don't have to find them, and you don't have to remember to retry — the system picks them back up on its own.

The retry is deliberately bounded so it stays safe and predictable:

  • It's capped per contact. Each contact only gets a limited number of automatic attempts, so a genuinely unresolvable contact won't be retried forever.
  • It skips paused campaigns. If you've paused a campaign, its contacts aren't pulled back into enrichment behind your back.
  • It skips contacts that can't be mailed. There's no point enriching — or charging for — a contact you won't be emailing anyway.

Together, those limits mean the recovery only runs work that actually should run, and you're never re-charged for work that shouldn't.

Why it matters

Enrichment is what turns a bare contact into someone you can personalize to and actually reach. A contact that failed to enrich is a hole in your campaign: missing details, weaker personalization, and in some cases a prospect who never gets contacted properly at all. When those failures were caused by temporary errors, losing the contact was especially wasteful — the data was almost always available, the attempt just happened to fall over at the wrong moment.

Letting those failures self-heal closes that gap quietly in the background. Transient failures get another chance without any effort from you, so more of your list ends up usable and fewer prospects fall through the cracks for no good reason.

Just as important, the recovery is careful about your credits. Because it respects a per-contact attempt cap and skips both paused campaigns and unmailable contacts, the automatic retries don't turn into a source of surprise charges. You get the upside — more contacts recovered — without paying twice for the same work, or paying for work that was never going to be sent. It's the kind of fix that simply makes your data more complete while you focus on the campaign itself.

Toutes les nouveautés

Une prospection qui continue quand vous vous déconnectez.Leads, emails, relances et réponses, gérés.

Connectez des boîtes illimitées et laissez les agents IA trouver les leads, écrire chaque email et relancer. Ou envoyez vos propres modèles en mode manuel. À partir de $29/mois.

$1 pour 3 jours · Annulez quand vous voulez · Sans engagement

Installer avec l'IA

Votre agent de code installe la CLI et les skills FirstSales pour vous.

Prompt pour Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.