How to import and enrich b2b leads using Thecompaniesapi step by step guide

If you’re tired of staring at spreadsheets full of half-baked company info, this guide’s for you. We’ll walk through a practical, step-by-step process for importing and enriching B2B leads using Thecompaniesapi. Whether you’re building a sales list, running outbound campaigns, or just want to stop wasting time hunting down company data, you’ll get a clear plan—and some honest warnings about what’s actually worth your time.

Let’s get to it.


Step 1: Get Your Lead List Ready

Before you touch an API, you need a solid starting list. If your data’s a mess, enrichment won’t fix it.

What you’ll need: - A spreadsheet (CSV, XLSX, or Google Sheets) with at least a company name, website, or domain for each lead. - Ideally, add emails or company domains—more unique, the better. - Ditch extra columns you don’t need. The cleaner, the easier your life.

Pro tip:
If you only have company names, double-check for duplicates and weird spellings. “Acme Inc.” and “Acme, Inc” are not the same to a computer. Standardize them as much as you can.


Step 2: Sign Up and Get Your Thecompaniesapi Credentials

You’ll need an account and an API key from Thecompaniesapi before anything else. No API key, no data.

To do: 1. Go to Thecompaniesapi and sign up. 2. Find your API key in your dashboard—usually under “API Access” or similar. 3. Save this somewhere safe. Treat it like a password.

Heads up:
If you’re on a free tier, there’s usually a limit on how many companies you can enrich per month. Check this before running a huge batch and getting cut off halfway.


Step 3: Choose Your Import & Enrichment Workflow

You’ve got options. The best workflow depends on your tools and comfort level.

A. Manual Upload (Best for Non-Coders)

Some enrichment tools let you upload a CSV directly in their dashboard. If Thecompaniesapi offers this, it’s by far the easiest way to get started.

  • Pros: No code, quick to test.
  • Cons: Limited automation, annoying if you need to do this regularly.

B. API Integration (For Developers or Power-Users)

If you’re comfortable with Python, Node.js, or even Zapier, you can automate the whole thing by calling the API directly.

  • Pros: Fully automated, repeatable, handles bigger lists.
  • Cons: Takes more setup. You’ll need to write or borrow some code.

Honest advice:
If you’re just testing, start with a manual upload. If you know you’ll need this weekly, invest in an API workflow.


Step 4: Map Your Data Fields

Enrichment only works if your input matches what the API expects. Garbage in, garbage out.

Typical required fields: - company_name - website or domain - Optional: email, location

Check Thecompaniesapi docs for the exact field names. Make sure your CSV headers match these, or you’ll get a bunch of errors.

What not to do:
Don’t try to enrich leads with just a generic company name like “Apple” or “Delta.” You’ll get a lot of false positives. Use domains whenever possible.

Pro tip:
If you have emails, extract the domain for more accurate matching (e.g., “john@acme.com” → “acme.com”).


Step 5: Import Your Leads

If Using Manual Upload:

  1. Log in to Thecompaniesapi dashboard.
  2. Find the “Bulk Enrich” or “CSV Upload” option.
  3. Upload your file, map your columns, and start the process.

If Using the API:

Here’s a simple Python example (using requests). You’ll need your API key and the right endpoint from the docs.

python import requests import csv

API_KEY = "your_api_key_here" API_URL = "https://api.thecompaniesapi.com/v1/enrich"

with open('leads.csv', newline='') as csvfile: reader = csv.DictReader(csvfile) for row in reader: payload = { "company_name": row["company_name"], "domain": row.get("domain") } headers = { "Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json" } response = requests.post(API_URL, json=payload, headers=headers) data = response.json() # Do something with the enriched data, like write it to a new CSV

Don’t batch too aggressively:
Most APIs have rate limits. Check Thecompaniesapi’s docs so you don’t get blocked for sending too many requests per second.


Step 6: Review and Clean the Enriched Data

Enrichment isn’t magic. You’ll get some great data, and some… not so great.

Check for: - Missing data (not every company will have everything) - Mismatched records (sometimes the wrong company gets matched) - Weird formatting (addresses, phone numbers, revenue ranges)

What works: - Using domains gets you more accurate matches. - Large, well-known companies usually return the best data.

What doesn’t: - Vague names, small startups, and international businesses can return spotty results. - Expect some “unknown” or blank fields. That’s just the reality.

Pro tip:
Run a quick spot-check on random rows. Don’t just assume the enrichment worked perfectly.


Step 7: Export Your Final List

Once you’re happy with the data, save it out in a format your sales or marketing team can actually use.

  • CSV is the safest bet. Everyone can open it.
  • Double-check for duplicate rows or broken data before sending it around.
  • Archive your original file. If something goes wrong, you’ll want to start over.

Step 8: Plug Your Enriched Data Into Your Workflow

This is where you actually use the data for something useful—outreach, CRM import, ads, whatever.

A few things to watch for: - If you’re importing to a tool like Salesforce or HubSpot, make sure your columns match up. - Don’t blindly overwrite your old data. Keep a backup. - If you plan to do this regularly, document your process so you’re not reinventing the wheel each time.


What to Ignore

  • Overpromised “95% match rates”: Nobody hits those numbers in reality, especially with small or international companies.
  • Enriching with just a company name: Not worth it. Always add a domain if you can.
  • Chasing every possible enrichment field: Focus on what’s useful—industry, size, location. Don’t clutter your CRM with 50 columns of junk.

Quick Recap & Final Thoughts

Importing and enriching B2B leads with Thecompaniesapi isn’t rocket science, but it does take some prep. Clean your data, use domains, test with a small batch, and always review the results. Skip the bells and whistles. Once you’ve got a process that works, keep it simple and refine as you go. Consistency beats cleverness every time.

Now go turn that mountain of half-baked leads into something your team can actually use.