← all tools
Enrichment

BetterContact

Waterfall enrichment across providers, a hundred leads at a time.

BetterContact is a contact enrichment tool, and one of the 52 tools hyreflow connects to Claude, ChatGPT and other AI assistants. Through hyreflow, an AI agent can run 2 actions, all of which look something up. Paid BetterContact actions cost 4.8 credits per result, from your hyreflow credit balance, so you need no BetterContact account, though you can connect your own key.

Cost per call4.8 cr / result
Your own keyoptional
CategoryEnrichment

BetterContact queries multiple data vendors for each contact and returns the best result, in batches of up to a hundred. Emails are cheap. Phone numbers cost roughly ten times as much, so hyreflow leaves them switched off unless you ask for them.

Another waterfall option. It runs after the shortlist exists and before anything is validated.

What can you ask Claude or ChatGPT to do with BetterContact?

With hyreflow connected, you ask for the outcome in plain language and the assistant runs BetterContact for you. For example:

  • “Enrich these 100 leads, emails only, no phone numbers”
  • “Take the longlist from TheirStack and resolve contact details for the decision makers”
  • “Get numbers for these six, I want to call them today”
  • “Validate everything that comes back through Enrichley before we send”

Which tools work well with BetterContact?

In a hyreflow run, BetterContact is most often paired with TheirStack, Enrichley, FullEnrich and Instantly.

  • TheirStack

    start from companies with a live hiring signal

  • Enrichley

    the deliverability gate after the waterfall

  • FullEnrich

    the alternative waterfall, worth trying on a thin batch

  • Instantly

    send to the addresses that came back clean

Which BetterContact actions can an AI agent run through hyreflow?

Through hyreflow, an AI agent can run 2 BetterContact actions, all of which look something up. Paid BetterContact actions cost 4.8 credits per result, from your hyreflow credit balance, so you need no BetterContact account, though you can connect your own key.

BetterContact actionWhat it doesCost through hyreflow
Start enrichmentLooks something upup to 4.8 credits per result
Get enrichmentLooks something upfree

One credit is priced on the pricing page. The full price list for every tool is in the pricing tables.

How does an AI agent know how to use BetterContact?

hyreflow ships a written playbook for BetterContact, and the agent loads it before the first call. Auth, rate limits, what each call costs, which actions need your approval, and the mistakes worth avoiding. It is the difference between an agent that knows the tool and one that guesses at it.

Read the BetterContact docs →
Show the raw playbookwritten for the agent

HOW in lib/bettercontact.py. Docs cached at reference/docs/bettercontact/raw/.

Auth & config

  • Base URL: https://app.bettercontact.rocks/api/v2 · Auth: header X-API-Key (env BETTERCONTACT_API_KEY; never hardcode).

Async flow

  1. start_enrichment(data=[{first_name,last_name,company,company_domain,linkedin_url,...}], enrich_email_address=True, enrich_phone_number=False, webhook=None) → POST /async → returns {id}. Max 100 leads/request.
  2. get_enrichment(request_id) → GET /async/{request_id} — poll until terminal (or use webhook).

Guardrails

  • enrich_phone_number=True raises the charge from 0.5 to 4.8 credits (billed once, on retrieval, when the result carries data) — default off, enable only when a phone number is actually needed. Pilot a small batch first.

Handoff

Waterfall enrichment layer (multi-provider email/phone). Take a shortlist → BetterContact → validate (Enrichley/email-validation) → ATS/sequencer. Runs in the phone_enrichment chain; a phone-only request (enrich_email_address: false, enrich_phone_number: true) is how that waterfall calls it and bypasses the work-email-only channel guard.

Field notes (production experience)

Field-shape note: these are vendor-native operational notes. The client returns the raw vendor JSON and uses the method names in this file — read field shapes accordingly (no normalized-wrapper / result.data. prefix).

  • Async: start_enrichment returns a request id immediately -> fetch terminal data via get_enrichment(request_id).
  • Email status hierarchy: deliverable > catch_all_safe > catch_all_not_safe > undeliverable - only trust deliverable and catch_all_safe for outreach.
  • Batch up to 100 contacts per request.
  • Pricing: 0.5 credits for an email reveal, 4.8 for a phone reveal (email included), charged once when the retrieved result carries data -> only set enrich_phone_number: true when explicitly needed. get_enrichment returns credits_consumed.
  • Rate limit: 60 req/min per key (shared across endpoints).
  • Use it for: multi-provider waterfall email/phone when single-provider finders (LeadMagic/Prospeo) miss. Not for validation-only or company enrichment.

Callable surface — lib/bettercontact.py

Import: from lib.bettercontact import BetterContact → instantiate BetterContact() (reads key from env). Base: https://app.bettercontact.rocks/api/v2. Generic passthrough: request(method, path, *, params, json).

  • get_account() -> dict — GET /account — account info + remaining credits: {success, credits_left, email} on the caller's own BetterContact account; requires the workspace's own key.
  • get_enrichment(request_id: str) -> dict — GET /async/{request_id} — poll the enrichment result.
  • ping() -> dict — BYOK key-verification probe — GET /account (free, no job started).
  • start_enrichment(data: list[dict], *, enrich_email_address: bool = True, enrich_phone_number: bool = False, webhook: str | None = None, **opts) -> dict — POST /async — start waterfall enrichment for up to 100 leads. Returns {id}.

Questions about BetterContact and hyreflow

Can I use BetterContact inside Claude or ChatGPT?

Yes. hyreflow is a connector for Claude, ChatGPT and other AI assistants. Once hyreflow is connected, you ask for the outcome in plain language and the assistant calls BetterContact for you. hyreflow exposes 2 BetterContact actions this way.

Do I need my own BetterContact account to use it with hyreflow?

No. hyreflow holds the BetterContact account and bills each action from your hyreflow credits. If you already pay for BetterContact, you can connect your own key instead, and hyreflow then charges no credits for those calls.

What does BetterContact cost through hyreflow?

Paid BetterContact actions cost 4.8 credits per result, from your hyreflow credit balance, so you need no BetterContact account, though you can connect your own key. 1 action is free. hyreflow can show the cost of a paid action before it runs.

How do I connect BetterContact to an AI agent over MCP?

Add the hyreflow MCP server to your assistant and sign in. hyreflow calls the BetterContact API directly and exposes its actions as tools the assistant can run, so there is no separate BetterContact server to install.

Connect hyreflow to your assistant →

Put BetterContact to work from one prompt

Connect hyreflow to Claude or ChatGPT and ask for the outcome. It reads the playbook above before it makes a single call.