Skip to content
heyenrich
Clay

HeyEnrich in Clay

Use the HTTP API column today on any Clay plan. A native provider listing is in review. Either way the credits are ours, not Clay's, and a miss costs nothing.

How it works

Setup in four steps

  1. 01

    Create an API key

    At app.heyenrich.io, first screen after signup. Use a test key (he_test_) to build the table without spending credits.

  2. 02

    Add an HTTP API enrichment

    In your table: Enrich → HTTP API. Method POST, URL https://api.heyenrich.io/v1/lookup.

  3. 03

    Set the header and body

    Header Authorization: Bearer {{your key}}. Body: {"linkedin_url": "{{LinkedIn URL}}", "fields": ["work_email", "mobile"]}.

  4. 04

    Map the columns

    work_email.value, work_email.state, mobile.value, mobile.line_type, credits_charged. Add a formula column that passes only state == verified to your sending tool.

The exact column config

Clay HTTP API column
Method:  POST
URL:     https://api.heyenrich.io/v1/lookup
Headers: Authorization: Bearer {{HEYENRICH_KEY}}
         Content-Type: application/json
Body:    {
           "linkedin_url": "{{LinkedIn URL}}",
           "fields": ["work_email", "mobile"]
         }

Response paths to map:
  /work_email/value       → Work email
  /work_email/state       → Email state
  /work_email/checked_at  → Email checked
  /mobile/value           → Mobile
  /mobile/line_type       → Line type
  /credits_charged        → Credits

Actions and what each costs

The same credits as everywhere else. A miss inside any integration costs nothing.

ActionInputReturnsCredits
Look up personLinkedIn URL, name + domain, or work emailwork_email, personal_email, mobile with state and checked_at1 / 2 / 5 per field found
Company by domainDomainEmail pattern and share, catch-all, MX provider, headcount band1, or free with a person match
Verify emailAddressstate and checked_at0.5
Bulk jobRows or a fileJob id, then a download URLSame per filled field

Where to put it in a waterfall

First

One query, 180 ms, nothing on a miss. Anything we return has a state and date; anything we don't costs nothing before Clay moves to the next provider.

Last

If a regional specialist covers your market better, run them first and send the misses to us. The coverage page tells you which before you build.

Only

For a table under 100,000 rows, one HTTP column with work_email and mobile is usually the whole waterfall.

Build it with a test key first

he_test_ keys return the three sample people with every state, so the branch logic is right before a credit is spent.

FAQ

Clay questions

Does this use Clay credits?

No. An HTTP API column uses your HeyEnrich key. Clay's data credits are untouched, which is the reason to set it up this way.

When is the native provider coming?

The listing is in Clay's review. When it's live you'll be able to bring your own key or use Clay credits; the HTTP column keeps working either way.

Can I run it on a saved Sales Navigator search?

Yes. Import the search into Clay, make sure the LinkedIn URL column is mapped, and the HTTP column enriches each row as it lands.

What about rate limits with big tables?

Clay runs rows in parallel. Limits are 60 to 1,000 requests a minute by plan; if a table is larger, run it through /v1/bulk instead and import the result.