DEV Community

Donny Nguyen
Donny Nguyen

Posted on • Originally published at rapidapi.com

Scrape Apollo.io Lead Data Without a $99/Month Subscription

Apollo.io is one of the best B2B lead databases out there — 275 million contacts, 73 million companies, verified emails, direct dials, and intent data. Their paid plans start at $99/month.

If you're building a sales tool, a lead enrichment pipeline, or a prospecting automation — you don't need to pay Apollo's full subscription price to access that data. You need a scraper.

I've built and maintain a hosted Apollo Lead Scraper API that pulls public lead data from Apollo. Here's how it works.

API Link: Apollo Lead Scraper API on RapidAPI

What It Returns

{
  "success": true,
  "query": "software engineer San Francisco",
  "count": 25,
  "data": [
    {
      "name": "Jane Smith",
      "title": "Senior Software Engineer",
      "company": "Acme Corp",
      "location": "San Francisco, CA",
      "linkedin": "https://linkedin.com/in/janesmith",
      "email": "j.smith@acmecorp.com",
      "companySize": "201-500",
      "industry": "Software Development",
      "companyUrl": "https://acmecorp.com"
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Quick Start

const axios = require('axios');

async function scrapeApolloLeads(query, options = {}) {
  const response = await axios.get(
    'https://apollo-lead-scraper.p.rapidapi.com/search',
    {
      params: {
        q: query,
        limit: options.limit || 25,
        title: options.title || '',
        location: options.location || '',
        industry: options.industry || ''
      },
      headers: {
        'X-RapidAPI-Key': 'YOUR_RAPIDAPI_KEY',
        'X-RapidAPI-Host': 'apollo-lead-scraper.p.rapidapi.com'
      }
    }
  );
  return response.data;
}

// Get CTOs at SaaS companies in New York
const leads = await scrapeApolloLeads('CTO SaaS New York', {
  title: 'CTO',
  location: 'New York',
  limit: 50
});
Enter fullscreen mode Exit fullscreen mode

Use Cases

1. Targeted Cold Outreach List

Build a highly targeted prospect list for your ICP:

async function buildProspectList(criteria) {
  const { title, industry, location, companySize } = criteria;

  const query = `${title} ${industry} ${location}`;
  const results = await scrapeApolloLeads(query, { limit: 100 });

  // Filter by company size if needed
  return results.data.filter(lead => 
    !companySize || lead.companySize === companySize
  );
}

// Example: VP of Sales at mid-market SaaS companies in Texas
const prospects = await buildProspectList({
  title: 'VP Sales',
  industry: 'SaaS',
  location: 'Texas',
  companySize: '51-200'
});
Enter fullscreen mode Exit fullscreen mode

2. Lead Enrichment

Enrich your existing contact list with additional data:

async function enrichContact(name, company) {
  const results = await scrapeApolloLeads(`${name} ${company}`, { limit: 5 });

  const match = results.data.find(lead => 
    lead.company.toLowerCase().includes(company.toLowerCase())
  );

  return match || null;
}

// Enrich a CRM export
const enrichedContacts = await Promise.all(
  crmContacts.map(c => enrichContact(c.name, c.company))
);
Enter fullscreen mode Exit fullscreen mode

3. Company Employee Discovery

Find all relevant contacts at a target company:

async function getCompanyContacts(companyName, targetTitles) {
  const results = await scrapeApolloLeads(companyName, { limit: 100 });

  return results.data.filter(lead => 
    targetTitles.some(title => 
      lead.title.toLowerCase().includes(title.toLowerCase())
    )
  );
}

// Find decision makers at a target company
const decisionMakers = await getCompanyContacts('Acme Corp', [
  'CEO', 'CTO', 'VP', 'Director', 'Head of'
]);
Enter fullscreen mode Exit fullscreen mode

4. Market Mapping

Map the decision-making landscape in a specific market:

async function mapMarket(industry, roles) {
  const allLeads = await Promise.all(
    roles.map(role => scrapeApolloLeads(`${role} ${industry}`, { limit: 50 }))
  );

  const leads = allLeads.flatMap(r => r.data);

  // Group by company
  const byCompany = leads.reduce((acc, lead) => {
    const key = lead.company;
    if (!acc[key]) acc[key] = [];
    acc[key].push(lead);
    return acc;
  }, {});

  // Companies with multiple decision makers
  return Object.entries(byCompany)
    .filter(([, contacts]) => contacts.length >= 2)
    .map(([company, contacts]) => ({ company, contacts }));
}
Enter fullscreen mode Exit fullscreen mode

5. Sales Intelligence Pipeline

Combine Apollo leads with tech stack detection for hyper-targeted outreach:

async function buildIntelligentProspectList(query, requiredTech) {
  const leads = await scrapeApolloLeads(query, { limit: 100 });

  // Filter leads whose company uses specific tech
  const enriched = await Promise.allSettled(
    leads.data.map(async lead => {
      if (!lead.companyUrl) return null;
      const tech = await detectTechStack(lead.companyUrl); // Website Tech Detector API
      const hasRequiredTech = tech.data.some(t => t.name === requiredTech);
      return hasRequiredTech ? { ...lead, techStack: tech.data } : null;
    })
  );

  return enriched
    .filter(r => r.status === 'fulfilled' && r.value)
    .map(r => r.value);
}

// Find React developers at companies using Shopify
const targets = await buildIntelligentProspectList('developer', 'Shopify');
Enter fullscreen mode Exit fullscreen mode

Parameters

Parameter Type Required Description
q string Yes Search query (name, title, company, location)
title string No Filter by job title
location string No Filter by location
industry string No Filter by industry
limit number No Results to return (1-100, default: 25)

Pricing

Plan Requests/mo Price
BASIC 100 Free
PRO 5,000 $9.99/mo
ULTRA 25,000 $29.99/mo
MEGA 100,000 $79.99/mo

Combine with Other APIs for Maximum Power

The real leverage comes from combining data sources:

  1. Apollo Lead Scraper → get contacts + company URLs
  2. Website Tech Detector → qualify by tech stack
  3. Email Extractor → verify/supplement email data
  4. DuckDuckGo Search → research recent news about each company

That's a full lead intelligence pipeline for under $40/month combined.

Get Started

Subscribe to Apollo Lead Scraper API on RapidAPI →


Built by Donny Dev — see the full data API suite: DuckDuckGo Search · Email Extractor · Website Tech Detector · Shopee Scraper

Top comments (0)