You get a Clay table of people who run a function at your target accounts and started the role in the last 90 days. New leaders have a budget to set and no loyalty to the old vendor. The recipe is one HTTP API column calling POST /v1/people/search for each domain. Clay's template is a table you duplicate (Clay, September 2026). This version uses LeadOcean as the people source, and a free key is enough to test it.
LeadOcean has no "started recently" filter. You search by domain and level, then keep rows by start date.
How it works
- Get a LeadOcean key. Sign up at app.leadocean.io/register. Free is 1,000 records, no card.
- Add a domain column. One target company domain per row, such as
acme.com. Name itCompany Domain. - Add an HTTP API column. Set POST and
https://api.leadocean.io/v1/people/search, then send the domain and the levels you sell to. The column needs Clay Growth or higher (Clay pricing, September 2026). - Return the people. Set the Field path to
data. Each person's current role sits incontact_data.contact_current_experienceswith astart_date. - Keep the new ones. Add a formula column that reads each person's
start_datefrom thedatalist and keeps those within the last 90 days. Check five rows by hand first. - Enrich only the survivors. Call
POST /v1/people/enrichwith theperson_idandreveal_emailtrue. Do this on the short list, not on every row.
Configuration
Method: POST
URL: https://api.leadocean.io/v1/people/search
Headers: x-api-key: <your LeadOcean key>
content-type: application/json
Body: {
"domain": ["/Company Domain"],
"jobLevel": ["C-Team", "VP", "Director"],
"limit": 25
}
Field paths to return:
dataClay marks a column reference inside a JSON string with a leading slash (Clay docs, September 2026). Save the key as a header account so it is not visible in the column. Test the same call first.
curl -s -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":["C-Team","VP","Director"],"limit":25}'Filter values are exact strings. List them with GET /v1/enums/job_level. Narrow by function with jobFunction if you sell to one team.
Field mapping
| LeadOcean field | Clay column | Note |
|---|---|---|
meta.source_ids.person_id | Person ID | Needed for the enrich call. |
profile_data.profile_full_name | Full name | |
contact_data.contact_current_experiences[].job_title | Title | First entry is the current role. |
contact_data.contact_current_experiences[].company_domain | Company domain | Echoes your input. |
contact_data.contact_current_experiences[].start_date | Role start date | The field your 90-day check reads. |
contact_data.email_status | Email status | From the enrich call. Send to verified or catch_all_valid. |
Cost at 10,000 rows
10,000 people returned cost LeadOcean 10,000 records, one per person (LeadOcean docs, October 2026). Free covers the first 1,000, once. Solo is $97 a month and Agency is $497 a month, with a fair-use pace instead of credits (LeadOcean pricing). Sizing counts and empty pages are free.
Clay uses one Action per HTTP call (Clay pricing, September 2026). At 25 people a call, 10,000 rows take about 400 calls. Growth starts at $495 a month, or $446 a month billed yearly, with 40,000 Actions included.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| No HTTP API column | Clay Free or Launch plan | The column is on Growth and Enterprise (Clay pricing, September 2026). Or export a CSV from LeadOcean and import it. |
| 401 | Wrong header name | Use x-api-key, not Authorization. |
Empty data | Nobody at that level is held at the domain | Add Manager, or check the domain has no www. or path. |
| 400 | Wrong enum case, such as vp | Use VP, C-Team, Director. |
| 429 | Over 5 requests a second on Free | Lower the column rate limit. 200 a second on Agency. |
| 402 | The 1,000 free records are spent | Move to Solo or Agency. |
| Nobody started in 90 days | The window is short for small companies | Widen it to 180 days. |
FAQ
Can I filter by start date in the search?
No. The filter list has no start-date or tenure filter. Search, then filter on start_date as above.
Can I skip Clay?
Yes. POST /v1/exports writes a CSV with a current_start_date column (LeadOcean docs, October 2026). Bulk CSV export is not on Free. Sort the file by that column.
How current is the start date?
The dataset is refreshed monthly, and each record carries a fetched_at date. Treat a new start as a lead to confirm, not a fact.
Can I run this from an AI editor?
Yes. See Cursor, VS Code and Windsurf.
Back to all integrations. See pricing.
Find the executives who just started at your target accounts. Start free.
Free to start. No credit card. 1,000 records to spend whenever you like.
Get your free API key →