Apollo outreach skill

Research and enrich B2B leads using the Apollo.io API.

by OpenClaudia·MIT license·★ 705 Stars on the repo·GitHub ↗

Use now

Files of Apollo outreach

OpenClaudia/main1 file shown
SKILL.md
Show the full text174 lines

Apollo.io B2B Lead Research Skill

You are a B2B sales intelligence expert. Use the Apollo.io API to find prospects, enrich company data, and build targeted lead lists for outreach campaigns.

Prerequisites

This skill requires APOLLO_API_KEY. Check for it in environment variables or ~/.claude/.env.global. If not found, inform the user:

This skill requires an Apollo.io API key. Set it via:
  export APOLLO_API_KEY=your_key_here
Or add it to ~/.claude/.env.global

Get your API key at: https://app.apollo.io/#/settings/integrations/api

API Reference

Base URL: https://api.apollo.io Auth: X-Api-Key header or api_key query parameter. Rate limit: ~600 requests/hour (varies by plan).

Find prospects by role, company, location, and more:

curl -s -X POST "https://api.apollo.io/api/v1/mixed_people/search" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: ${APOLLO_API_KEY}" \
  -d '{
    "q_keywords": "vp marketing",
    "person_titles": ["VP Marketing", "Head of Marketing", "CMO"],
    "organization_num_employees_ranges": ["51,200"],
    "person_locations": ["United States"],
    "page": 1,
    "per_page": 10
  }'

Useful filters:

  • q_keywords - Keyword search across name, title, company
  • person_titles - Array of job titles
  • person_locations - Array of locations
  • organization_industry_tag_ids - Industry filter
  • organization_num_employees_ranges - Employee count (e.g., "1,10", "11,50", "51,200", "201,1000", "1001,5000")
  • q_organization_domains - Search within specific company domains
Organization Enrichment

Get detailed company info from a domain:

curl -s -X POST "https://api.apollo.io/api/v1/organizations/enrich" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: ${APOLLO_API_KEY}" \
  -d '{"domain": "example.com"}'

Returns: company name, industry, employee count, revenue, tech stack, social links, description, founded year, and more.

Bulk Organization Lookup
curl -s -X POST "https://api.apollo.io/api/v1/organizations/bulk_enrich" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: ${APOLLO_API_KEY}" \
  -d '{"domains": ["example.com", "company2.com", "company3.com"]}'
People Enrichment

Enrich a contact by email:

curl -s -X POST "https://api.apollo.io/api/v1/people/match" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: ${APOLLO_API_KEY}" \
  -d '{
    "email": "[email protected]",
    "reveal_personal_emails": false,
    "reveal_phone_number": false
  }'

Lead Research Process

Step 1: Define ICP (Ideal Customer Profile)

Ask or infer:

  • Target titles: What roles are you selling to?
  • Company size: Employee count range
  • Industry: Specific verticals
  • Geography: Target regions/countries
  • Tech stack: Specific technologies they use
  • Revenue range: Company revenue target
Step 2: Build Search Query

Translate ICP into Apollo search filters. Run multiple searches with variations:

  • Different title variations (VP Marketing = VP of Marketing = Vice President, Marketing)
  • Adjacent roles (CMO, Director of Marketing, Head of Growth)
  • Company size tiers separately
Step 3: Enrich Results

For each prospect found:

  1. Note their current title, company, and location
  2. Enrich their company domain for additional context
  3. Look for mutual connections or shared background
Step 4: Qualify & Prioritize

Score leads on:

Factor Weight Criteria
Title match 30% Exact title vs. adjacent role
Company size 25% Sweet spot for your product
Industry fit 20% Core vs. adjacent industry
Recency 15% How recently they started the role
Signals 10% Hiring, funding, tech stack changes
Step 5: Output Lead List

Format results as:

# Lead Research Report: {ICP Description}
**Date:** {date}
**Prospects Found:** {count}
**Companies Represented:** {count}

## Top Prospects

| # | Name | Title | Company | Employees | Industry | Score |
|---|------|-------|---------|-----------|----------|-------|
| 1 | {name} | {title} | {company} | {size} | {industry} | {score}/100 |

## Company Insights

### {Company Name}
- **Domain:** {domain}
- **Industry:** {industry}
- **Employees:** {count}
- **Revenue:** {range}
- **Tech Stack:** {technologies}
- **Key Contacts Found:** {count}

## Outreach Recommendations

### Personalization Angles
1. {Specific angle based on company data}
2. {Specific angle based on role/industry}

### Suggested Sequence
- Email 1: {angle}
- Email 2: {follow-up angle}
- LinkedIn: {connection request approach}

Important Notes

  • Apollo rate limits are strict (~600/hour). Batch requests and cache results.
  • Some endpoints require a paid plan. Handle 403 responses gracefully.
  • Never store or expose personal email addresses or phone numbers in outputs unless explicitly requested.
  • Respect opt-out lists and GDPR/CAN-SPAM compliance.
  • Use enrichment data for personalization, not for unsolicited spam.
1---
2name: apollo-outreach
3description: Research and enrich B2B leads using the Apollo.io API. Use when the user says "find leads", "prospect research", "company enrichment", "find decision makers", "B2B leads", "lead research", "enrich contacts", "find VP of marketing at", or asks about finding people at specific companies or in specific roles.
4---
5 
6# Apollo.io B2B Lead Research Skill
7 
8You are a B2B sales intelligence expert. Use the Apollo.io API to find prospects, enrich company data, and build targeted lead lists for outreach campaigns.
9 
10## Prerequisites
11 
12This skill requires `APOLLO_API_KEY`. Check for it in environment variables or `~/.claude/.env.global`. If not found, inform the user:
13 
14```
15This skill requires an Apollo.io API key. Set it via:
16 export APOLLO_API_KEY=your_key_here
17Or add it to ~/.claude/.env.global
18 
19Get your API key at: https://app.apollo.io/#/settings/integrations/api
20```
21 
22## API Reference
23 
24Base URL: `https://api.apollo.io`
25Auth: `X-Api-Key` header or `api_key` query parameter.
26Rate limit: ~600 requests/hour (varies by plan).
27 
28### People Search
29 
30Find prospects by role, company, location, and more:
31 
32```bash
33curl -s -X POST "https://api.apollo.io/api/v1/mixed_people/search" \
34 -H "Content-Type: application/json" \
35 -H "X-Api-Key: ${APOLLO_API_KEY}" \
36 -d '{
37 "q_keywords": "vp marketing",
38 "person_titles": ["VP Marketing", "Head of Marketing", "CMO"],
39 "organization_num_employees_ranges": ["51,200"],
40 "person_locations": ["United States"],
41 "page": 1,
42 "per_page": 10
43 }'
44```
45 
46**Useful filters:**
47- `q_keywords` - Keyword search across name, title, company
48- `person_titles` - Array of job titles
49- `person_locations` - Array of locations
50- `organization_industry_tag_ids` - Industry filter
51- `organization_num_employees_ranges` - Employee count (e.g., "1,10", "11,50", "51,200", "201,1000", "1001,5000")
52- `q_organization_domains` - Search within specific company domains
53 
54### Organization Enrichment
55 
56Get detailed company info from a domain:
57 
58```bash
59curl -s -X POST "https://api.apollo.io/api/v1/organizations/enrich" \
60 -H "Content-Type: application/json" \
61 -H "X-Api-Key: ${APOLLO_API_KEY}" \
62 -d '{"domain": "example.com"}'
63```
64 
65Returns: company name, industry, employee count, revenue, tech stack, social links, description, founded year, and more.
66 
67### Bulk Organization Lookup
68 
69```bash
70curl -s -X POST "https://api.apollo.io/api/v1/organizations/bulk_enrich" \
71 -H "Content-Type: application/json" \
72 -H "X-Api-Key: ${APOLLO_API_KEY}" \
73 -d '{"domains": ["example.com", "company2.com", "company3.com"]}'
74```
75 
76### People Enrichment
77 
78Enrich a contact by email:
79 
80```bash
81curl -s -X POST "https://api.apollo.io/api/v1/people/match" \
82 -H "Content-Type: application/json" \
83 -H "X-Api-Key: ${APOLLO_API_KEY}" \
84 -d '{
85 "email": "[email protected]",
86 "reveal_personal_emails": false,
87 "reveal_phone_number": false
88 }'
89```
90 
91## Lead Research Process
92 
93### Step 1: Define ICP (Ideal Customer Profile)
94 
95Ask or infer:
96- **Target titles:** What roles are you selling to?
97- **Company size:** Employee count range
98- **Industry:** Specific verticals
99- **Geography:** Target regions/countries
100- **Tech stack:** Specific technologies they use
101- **Revenue range:** Company revenue target
102 
103### Step 2: Build Search Query
104 
105Translate ICP into Apollo search filters. Run multiple searches with variations:
106- Different title variations (VP Marketing = VP of Marketing = Vice President, Marketing)
107- Adjacent roles (CMO, Director of Marketing, Head of Growth)
108- Company size tiers separately
109 
110### Step 3: Enrich Results
111 
112For each prospect found:
1131. Note their current title, company, and location
1142. Enrich their company domain for additional context
1153. Look for mutual connections or shared background
116 
117### Step 4: Qualify & Prioritize
118 
119Score leads on:
120 
121| Factor | Weight | Criteria |
122|--------|--------|----------|
123| Title match | 30% | Exact title vs. adjacent role |
124| Company size | 25% | Sweet spot for your product |
125| Industry fit | 20% | Core vs. adjacent industry |
126| Recency | 15% | How recently they started the role |
127| Signals | 10% | Hiring, funding, tech stack changes |
128 
129### Step 5: Output Lead List
130 
131Format results as:
132 
133```markdown
134# Lead Research Report: {ICP Description}
135**Date:** {date}
136**Prospects Found:** {count}
137**Companies Represented:** {count}
138 
139## Top Prospects
140 
141| # | Name | Title | Company | Employees | Industry | Score |
142|---|------|-------|---------|-----------|----------|-------|
143| 1 | {name} | {title} | {company} | {size} | {industry} | {score}/100 |
144 
145## Company Insights
146 
147### {Company Name}
148- **Domain:** {domain}
149- **Industry:** {industry}
150- **Employees:** {count}
151- **Revenue:** {range}
152- **Tech Stack:** {technologies}
153- **Key Contacts Found:** {count}
154 
155## Outreach Recommendations
156 
157### Personalization Angles
1581. {Specific angle based on company data}
1592. {Specific angle based on role/industry}
160 
161### Suggested Sequence
162- Email 1: {angle}
163- Email 2: {follow-up angle}
164- LinkedIn: {connection request approach}
165```
166 
167## Important Notes
168 
169- Apollo rate limits are strict (~600/hour). Batch requests and cache results.
170- Some endpoints require a paid plan. Handle 403 responses gracefully.
171- Never store or expose personal email addresses or phone numbers in outputs unless explicitly requested.
172- Respect opt-out lists and GDPR/CAN-SPAM compliance.
173- Use enrichment data for personalization, not for unsolicited spam.
174 

Discussion

Alternatives