Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Enriquecer Leads Com O Apollo

ASecurity

Busco e-mails verificados para uma lista de leads usando o bulk match do Apollo (em lotes de 10), atualizo as linhas do Airtable com e-mail, empresa, cargo e localização, e crio contatos no Apollo sob um rótulo nomeado para que os leads apareçam nos seus fluxos de trabalho do CRM da Apollo. É a fase 3 dos dois pipelines, e pode ser executada de forma independente se você tiver uma tabela do Airtable já carregada pelo carregador de leads.

113 stars
0 votes
0 copies
0 views
Added 9/19/2026
businessgo

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add gethouston/houston --skill enriquecer-leads-com-o-apollo --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Enriquecer Leads Com O Apollo?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Enriquecer Leads Com O Apollo
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gethouston-enriquecer-leads-com-o-apollo/badge)](https://www.skillsdirectory.com/skills/gethouston-enriquecer-leads-com-o-apollo)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: enriquecer-leads-com-o-apollo
title: "Enriquecer leads com o Apollo"
description: "Busco e-mails verificados para uma lista de leads usando o bulk match do Apollo (em lotes de 10), atualizo as linhas do Airtable com e-mail, empresa, cargo e localização, e crio contatos no Apollo sob um rótulo nomeado para que os leads apareçam nos seus fluxos de trabalho do CRM da Apollo. É a fase 3 dos dois pipelines, e pode ser executada de forma independente se você tiver uma tabela do Airtable já carregada pelo carregador de leads."
version: 1
category: Prospecção
featured: no
image: magnifying-glass-tilted-left
integrations: [airtable, apollo]
x_houston:
  created_by: houston
  skill_schema: 1
---


# Enriquecimento com o Apollo

Pegue uma lista de leads em uma tabela do Airtable e encontre e-mails verificados para o máximo possível usando o endpoint de bulk match do Apollo. Atualiza as linhas do Airtable no lugar com e-mail, empresa, cargo e localização, e cria contatos no Apollo sob um rótulo nomeado para que os leads cheguem aos seus fluxos de trabalho do CRM da Apollo. A taxa de match depende muito do público, espere de 50 a 70% em públicos de fundadores ou operadores dos EUA, mais baixo em públicos de consumidores ou fora dos EUA.

## Quando usar

- "Enriqueça esses leads com o Apollo: <tabela do Airtable>".
- "Encontre e-mails para as linhas dessa tabela".
- Fase 3 de qualquer um dos pipelines do LinkedIn (chamado pelo orquestrador).
- Você tem uma tabela do Airtable preenchida com `Profile URL`s e quer anexar e-mails.

## Quando NÃO usar

- Os leads ainda não estão no Airtable, carregue-os primeiro com `airtable-lead-loader`.
- Você só quer **ler** dados do Apollo, não modificar o Airtable, essa skill escreve de volta no Airtable como parte do seu contrato; se você só precisa de uma consulta pontual no Apollo, faça isso manualmente.

## Conexões de que preciso

- **Airtable** (banco de dados) - Obrigatório. Leio as linhas e depois escrevo de volta os campos de enriquecimento.
- **Apollo** (enriquecimento) - Obrigatório. Uso o endpoint `apollo_people_bulk_match` e o endpoint `apollo_contacts_create` via Composio.

Se algum estiver faltando, eu paro e peço para você conectar.

## Informações de que preciso

- **O ID da base do Airtable + o ID da tabela** - Obrigatório. Se chamado por um orquestrador, os dois já vêm prontos. Se chamado de forma independente, listo as bases e tabelas e pergunto qual delas se houver alguma ambiguidade.
- **Um rótulo de contato no Apollo** - Opcional. O padrão é `LinkedIn {sourceType} - {sourceAuthor} Post`, derivado dos campos `Source Type` e `Source Author` da tabela (cada linha de uma dada tabela tem a mesma origem). Pode ser sobrescrito por chamada.

## Passos
<!-- houston-workflow:v1 -->

1. **Puxar todos os registros.** Percorra a tabela do Airtable 100 registros por vez até terminar. Colete as linhas em que `Email` está vazio (não reenriqueça linhas que já têm um e-mail). Guarde o `Profile URL`, `Full Name`, `Headline` de origem, e o `record_id` do Airtable de cada linha.

2. **Agrupar em lotes de 10.** O `apollo_people_bulk_match` do Apollo aceita até 10 consultas por chamada. Divida as linhas ainda não enriquecidas em lotes de 10.

3. **Fazer o bulk match em paralelo.** Inicie agentes em paralelo (4 por vez, igual ao carregador) e chame `apollo_people_bulk_match` para cada lote. Por linha na requisição, envie `linkedin_url: profileUrl` como chave primária, mais `name: fullName` como alternativa para o matcher do Apollo. Espere todas as chamadas terminarem.

4. **Mapear os resultados de volta para as linhas do Airtable.** O Apollo retorna um array por chamada na mesma ordem da requisição. Por resultado:
   - **E-mail verificado retornado** - defina `Email`, `Email Confidence: "verified"`, `Company`, `Title`, `Location`, `Apollo Contact URL`, `Enriched At`.
   - **E-mail estimado retornado** (o Apollo sinaliza matches de confiança mais baixa) - mesmos campos, mas `Email Confidence: "guessed"`. A skill `instantly-campaign`, mais adiante, descarta esses por padrão.
   - **Sem match** - defina apenas `Email Confidence: "no-match"`. Deixe `Email`, `Company`, `Title` vazios.

5. **Atualizar o Airtable em lotes.** Atualize 10 registros por chamada de `update records` (o limite real de lote do Airtable para atualização, diferente da criação). Inicie agentes de atualização em paralelo.

6. **Criar contatos no Apollo sob o rótulo.** Para cada linha que voltou com e-mail verificado ou estimado, chame `apollo_contacts_create` com o ID de pessoa do Apollo e o rótulo escolhido. O Apollo deduplica contatos por e-mail, então executar esse passo de novo com os mesmos dados é idempotente.

7. **Rebuscar as linhas enriquecidas.** Percorra a tabela de novo, colete as linhas com `Email Confidence: "verified"`. Salve-as em `runs/{runId}/contacts.json` no formato que a `instantly-campaign` espera:

   ```jsonc
   {
     "firstName": "Jane",
     "fullName": "Jane Doe",
     "email": "jane@northwind.example",
     "company": "Northwind",
     "title": "VP Operations",
     "linkedinUrl": "https://www.linkedin.com/in/janedoe",
     "personalizationFields": {
       "topRole": "VP Operations at Northwind",
       "topSchool": "Stanford",
       "topSkills": ["Operations", "Process Design"]
     }
   }
   ```

   `personalizationFields` só é preenchido para tabelas de origem de reações (onde o carregador escreveu `Top Role`, `Top School`, `Top Skills`). Para tabelas de origem de comentários esse objeto fica vazio.

8. **Atualizar o `leads.json`.** Para cada linha enriquecida, encontre o `profileUrl` correspondente em `leads.json` e defina `email`, `emailConfidence`, `company`, `title`, `location`, `enrichedAt`. Ler, mesclar e escrever de forma atômica.

9. **Adicionar ao `outputs.json`.** Uma linha: `{type: "enrichment", title: "Apollo enrichment - {tableName}", summary: "Matched {M} of {N} ({M/N}% match rate). {V} verified emails ready for outreach.", path: "runs/{runId}/contacts.json", status: "ready", domain: "enrichment"}`.

10. **Resumir para o usuário.** Um bloco:
    - Total de linhas processadas.
    - E-mails verificados encontrados (contagem + porcentagem).
    - E-mails estimados encontrados (contagem + porcentagem).
    - Contagem de sem match.
    - "E-mails verificados salvos para a próxima fase. E-mails estimados ficam no Airtable para sua revisão."

## Resultados

- Linhas do Airtable atualizadas com e-mail + empresa + cargo + localização + URL do Apollo + confiança.
- Novos contatos no Apollo sob o rótulo `LinkedIn {sourceType} - {sourceAuthor} Post`.
- `runs/{runId}/contacts.json` - contatos com e-mail verificado prontos para a `instantly-campaign`.
- `leads.json` - campos de enriquecimento preenchidos nos `profileUrl`s correspondentes.
- `outputs.json` - uma linha, `type: "enrichment"`, `domain: "enrichment"`.

## Falhas comuns

| Falha | Por quê | Correção |
|---|---|---|
| Taxa de match abaixo de 40% | Público muito voltado a consumidores, fora dos EUA, ou com cargos juniores (o banco de dados do Apollo é enviesado para empresas) | Normal para alguns públicos; siga em frente com o que você tem |
| Dados em cache sem e-mails na rebusca | A leitura do Airtable retornou um cache desatualizado | Espere 30 segundos e percorra de novo; se ainda estiver faltando, as escritas de atualização falharam silenciosamente, verifique erros de limite de taxa nas notas da execução |
| Limite de taxa do Apollo no bulk match | Muitos agentes em paralelo em um plano pequeno do Apollo | Reduza para 2 agentes em paralelo em vez de 4 |
| Apollo retorna 422 em `linkedin_url` | O formato da URL não corresponde ao que o Apollo espera (barra final, `/in/` vs `/pub/`) | Normalize para `https://www.linkedin.com/in/<slug>` antes de enviar; remova barras finais |

## O que eu nunca faço

- **Reenriquecer linhas que já têm um e-mail.** Verifico se `Email` está vazio antes de incluir uma linha nos lotes de bulk match. Economiza créditos do Apollo e evita sobrescrever dados bons.
- **Colocar e-mails estimados na campanha do Instantly.** E-mails estimados ficam no Airtable para sua revisão. Só e-mails verificados chegam ao `runs/{runId}/contacts.json`.
- **Enviar e-mails diretamente pelo Apollo.** Os endpoints de envio do Apollo existem, mas campanhas frias pertencem a um remetente dedicado (Instantly) para rastreamento de entregabilidade.
- **Fixar no código o formato do rótulo do Apollo ou o nome do endpoint de bulk match.** Tudo descoberto via Composio em tempo de execução.

Attribution

gethoustongethouston
View sourceMore from gethouston →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Solution Architect

Designs system architecture, component specifications, and technical integration strategy. Use when: designing solutions, system architecture, technology stack, or integration approaches.

192 votes

Akorchak:Venture Assessment

Generate a comprehensive VC investment assessment report for a company

72 votes

Stock Analysis

Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market cap), and periodic performance reports (daily/weekly/monthly/quarterly/yearly). 8 analysis dimensions for stocks, 3 for crypto. Use for stock analysis, portfolio tracking, earnings reactions, or crypto monitoring.

6511 votes

Just Fucking Cancel

Find and cancel unwanted subscriptions by analyzing bank transactions. Detects recurring charges, calculates annual waste, and helps you cancel with direct URLs and browser automation. Use when: 'cancel subscriptions', 'audit subscriptions', 'find recurring charges', 'what am I paying for', 'save money', 'subscription cleanup', 'stop wasting money'. Supports CSV import (Apple Card, Chase, Amex, Citi, Bank of America, Capital One, Mint, Copilot) OR Plaid API for automatic transaction pull. Out...

6511 votes

Telegram Compose

Compose rich, readable Telegram messages using HTML formatting via direct Telegram API. Use when: (1) Sending any Telegram message beyond a simple one-line reply, (2) Creating structured messages with sections, lists, or status updates, (3) Need formatting unavailable via Clawdbot's Markdown conversion (underline, spoilers, expandable blockquotes, user mentions by ID), (4) Sending alerts, reports, summaries, or notifications to Telegram, (5) Want professional, scannable message formatting wit...

6511 votes
View all in business →