You paste a column of website domains into Clay. Two HTTP API columns return the company facts LeadOcean holds and the people in champion-type roles at each account. Clay's own template also finds revenue and customers and drafts an email (Clay template, September 2026). This recipe covers the data half with LeadOcean and leaves the email to you.
A champion is the person who will push your product internally. LeadOcean has no "champion" flag. You define the role by title and job function, then search for it. The HTTP API column needs Clay Growth or higher (Clay pricing, September 2026).
How it works
- Get a free key. Sign up at app.leadocean.io/register. No card, 1,000 records.
- Paste the domains. One bare domain per row, such as
acme.com. - Add a company column. HTTP API, POST to
/v1/companies/enrichwith the domain. It returns firmographics. - Add a champions column. HTTP API, POST to
/v1/people/searchwith the domain and the titles you call champions. - Run five rows first. Check both columns fill, then run the table.
- Get emails for the keepers. Send the
person_idof each champion you want toPOST /v1/people/enrich.
Define the champion before step 4. A common choice is a Director or Manager in the function that uses your product. Check the exact enum strings free with leadocean_list_enum_values. To size a target list first, see find target accounts and what a target account list is.
Configuration
/Domain is Clay's column reference. Enum values are exact strings.
Column 1 (company)
Method: POST
URL: https://api.leadocean.io/v1/companies/enrich
Headers: x-api-key: <your LeadOcean key>
content-type: application/json
Body: { "domain": "/Domain" }
Column 2 (champions)
Method: POST
URL: https://api.leadocean.io/v1/people/search
Headers: x-api-key: <your LeadOcean key>
content-type: application/json
Body: {
"domain": ["/Domain"],
"jobLevel": ["Director", "Manager"],
"jobFunction": ["Sales & Business Development"],
"limit": 3
}
Field paths to return:
data
meta.totalTest the same two calls in a terminal first.
curl -X POST "https://api.leadocean.io/v1/companies/enrich" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{"domain":"acme.com"}'
curl -X POST "https://api.leadocean.io/v1/people/search" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{"domain":["acme.com"],"jobLevel":["Director","Manager"],"jobFunction":["Sales & Business Development"],"limit":3}'Clay shows data as one list in one cell. One row per person needs a second step in Clay.
Field mapping
| LeadOcean field | Clay column | Note |
|---|---|---|
company_data (from company enrich) | Company facts | Name, industry and size sit here. |
company_data.company_revenue_in_usd | Revenue (USD) | Held for a small share of companies. Null is normal. |
profile_data.profile_full_name | Champion name | Name as held on the profile. |
contact_data.contact_current_experiences | Champion role | Holds job_title and company_name. |
contact_data.has_email | Has email | Answered without revealing. Use it as the run condition for the enrich column. |
meta.source_ids.person_id | Person ID | Send it to POST /v1/people/enrich. |
The company record has no customers field (LeadOcean docs, October 2026). Clay's template finds customers with another source.
Cost at 10,000 rows
10,000 domains, one company lookup each and three champions each, come to about 40,000 records. LeadOcean's Free plan holds 1,000 records for life, so it covers about 250 domains. Solo at $97 a month covers 100k search records every 5 hours and 10k enrichments every 5 hours, so one run fits (LeadOcean pricing). A lookup that finds nothing costs nothing.
Clay uses one Action per HTTP call. Two columns over 10,000 rows is 20,000 Actions. Growth starts at $495 a month billed monthly, or $446 billed yearly, and includes 40,000 Actions (Clay pricing, September 2026). The enrich column adds more Actions per keeper.
Size the people first. A count is free, and meta.distinctCompanies shows how many employers a filter spans.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| No HTTP API column | Clay Free or Launch plan | The column is Growth and up. Pull a CSV from the LeadOcean app Exports page instead. |
| Company column returns 404 | Domain not in our data | Nothing is charged. Check the spelling or skip the row. |
data is empty | Full URL sent, not a bare domain | Send acme.com, not https://www.acme.com/about. |
400 on jobLevel | Value case is wrong | Use Director and Manager exactly. |
| 402 mid-run | The 1,000 free records are spent | Move to Solo or Agency. |
| 429 errors | Over 5 requests a second on Free | Lower the column's rate limit and honor Retry-After. |
FAQ
Can LeadOcean tell me who the champion is?
No. It returns people by title, level and function. You decide which roles are champions, and the search finds who holds them.
Does this write the personalized email?
No. LeadOcean supplies the company facts and the person. Write the email in Clay or in your own tool.
How do I get their emails?
Run POST /v1/people/enrich with person_id and reveal_email set. The enrichment is one record, and revealing the email adds none. Check email_status before you send, and accept only verified and catch_all_valid.
Can I start from a company name?
Yes. People search also takes companyName, but a domain is exact, so resolve the name to a website when you can. A related recipe starts from a domain too: domain to deck and contact.
Back to all integrations. Plans are on pricing.
Turn your domain list into champions. Start free.
Free to start. No credit card. 1,000 records to spend whenever you like.
Get your free API key →