Sales Navigator Advanced Plus is LinkedIn's top plan for teams with a CRM. It adds CRM sync and lead creation on top of search, but you only see its price by requesting a demo. This guide shows the part most buyers actually need: a filtered lead list you can size, pull and export without a seat.
LinkedIn's plan page lists Advanced Plus as "Request demo for pricing" and says it is for sales teams using an integrated CRM (LinkedIn compare plans, October 2026). It lists 50+ search filters and CRM sync with Salesforce, HubSpot and Microsoft Dynamics. It does not list an export API.
LeadOcean is not a Sales Navigator replacement for social selling. It has no inbox, InMail or CRM sync. It is the data layer: filters, emails, phones and CSV. If you want the list in your own tool, this is the shorter path.
TL;DR
- Build a VP of Sales list at mid-size US companies, size it for free, then pull 100 rows and reveal emails for 25. About 20 minutes.
- Spend: about 125 LeadOcean records. Counts, filter lookups and empty results cost nothing. The Free plan gives you 1,000 records for life.
- Output: JSON for your code, or a CSV through
POST /v1/exports(bulk CSV export is not on Free).
Prerequisites
- A LeadOcean account and API key, stored as
$LEADOCEAN_API_KEY(sign up free). curlandjq.- Optional: the LeadOcean MCP server at
https://api.leadocean.io/mcpif you would rather ask in plain English from an AI client. Sign-in is OAuth, so no key is pasted.
Step 1: Translate your Sales Navigator filters
Sales Navigator filters map to LeadOcean filter names one to one for the common ones. Check the exact enum strings first, because they are case-sensitive.
| Sales Navigator filter | LeadOcean filter |
|---|---|
| Seniority level: VP | jobLevel: ["VP"] |
| Function: Sales | jobFunction: ["Sales & Business Development"] |
| Geography | country: ["US"] |
| Company headcount | employeeRange: ["201-500", "501-1000"] |
| Job title | title: ["VP Sales"] |
List the valid values for a filter with GET /v1/enums/{name}, such as job_level or employee_range. It is free.
curl -s "https://api.leadocean.io/v1/enums/job_level" \
-H "x-api-key: $LEADOCEAN_API_KEY" | jq '.data.values'Step 2: Size the list for free
Add count=true as a query parameter and limit=1. You get a total and no rows, and no records are spent. Do it before every pull.
curl -s "https://api.leadocean.io/v1/people/search?count=true&limit=1" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{
"jobLevel": ["VP"],
"jobFunction": ["Sales & Business Development"],
"country": ["US"],
"employeeRange": ["201-500", "501-1000"]
}' | jq '.meta'meta.total is capped at 100,000. The MCP tool leadocean_count_leads does the same sizing and also returns distinctCompanies.
Step 3: Pull a page of people
Drop count=true and set limit up to 100. The body is flat JSON and every filter is an array. Paginate with cursor. One search pages to 10,000 rows, so narrow the filters instead of walking the index.
curl -s "https://api.leadocean.io/v1/people/search" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{
"jobLevel": ["VP"],
"jobFunction": ["Sales & Business Development"],
"country": ["US"],
"employeeRange": ["201-500", "501-1000"],
"limit": 100
}' > page1.json
jq '.meta' page1.jsonThis spends 100 records. For the next page, send the nextCursor from meta as cursor.
Step 4: Reveal emails for the people you keep
Search gives you the person. Enrichment gives you the contact. Pass exactly one of linkedin_url, email, phone or person_id, and set reveal_email to true. A person we hold nothing for is a 404 and costs nothing.
curl -s -X POST "https://api.leadocean.io/v1/people/enrich" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{"person_id": "PERSON_ID_FROM_STEP_3", "reveal_email": true}'Read email_status before you send anything. LeadOcean does not refund bounces. For phones, call GET /v2/people/phone.
Step 5: Export a CSV for the whole list
When the count looks right, export instead of paging. POST /v1/exports takes up to 50,000 rows a request and 500,000 a day. You can also run the same export from the Exports page in the app, which shows the record price before you start. Bulk CSV export is not on Free, so this step needs Solo ($97 a month) or higher.
curl -s -X POST "https://api.leadocean.io/v1/exports" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{
"name": "vp-sales-us-201-1000",
"filters": {
"jobLevel": ["VP"],
"jobFunction": ["Sales & Business Development"],
"country": ["US"],
"employeeRange": ["201-500", "501-1000"]
},
"limit": 5000,
"columns": ["profile_full_name", "current_job_title", "current_company_name", "email_N_address", "email_N_status", "phone_N_number"]
}'filters takes the same fields as people search, and limit is required. Numbered columns are requested as email_N_address; the CSV headers come back as email_1_address, email_2_address and so on. The export is async: poll GET /v1/exports/{id}, then download.
What you get
The free count for the filters above, run on 2026-10-21 with leadocean_count_leads:
{
"total": 20881,
"totalIsExact": true,
"totalAll": 55751,
"distinctCompanies": 9764
}total counts only people with a verified, catch-all-valid or catch-all email, the mailable default. totalAll is the same filters with no email condition. So the list is 20,881 mailable VPs at 9,764 companies, out of 55,751 matches.
Each search row carries the person's id at meta.source_ids.person_id, the LinkedIn profile_url when held, and the flags has_email, email_status and email_type. It never carries the address; Step 4 does that.
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
| 401 | Missing or wrong x-api-key | Copy the key from the app and export $LEADOCEAN_API_KEY |
| 429 | Above the plan's rate limit (5 a second on Free, 200 on Agency) | Back off for the Retry-After seconds |
| 402 | Out of records on the Free plan | Upgrade, or narrow the pull |
| Empty results | A filter value that is not an exact enum string, such as vp for jobLevel | Check GET /v1/enums and match case |
| Export refused | Over 50,000 rows a request or 500,000 a day | Split by country or headcount band |
| Export refused on Free | Bulk CSV export is not on Free | Use paged search, or move to Solo |
FAQ
How much does Sales Navigator Advanced Plus cost?
LinkedIn does not publish it. The compare-plans page says "Request demo for pricing" (LinkedIn, October 2026). Core and Advanced link to their own pricing pages.
What is the difference between Advanced and Advanced Plus?
On LinkedIn's compare page, Advanced is for sales teams and Advanced Plus is for teams using an integrated CRM. The CRM integrations and lead creation are the headline difference.
Does LeadOcean replace Sales Navigator?
No. It replaces the list-building and contact-data part. It has no rep workspace, sequencer, dialer, CRM or Chrome extension. Keep Sales Navigator if your team lives in LinkedIn.
What does the LeadOcean version cost?
Free is $0 with 1,000 records for life. Solo is $97 a month for one person, Agency is $497 a month for teams, and Platform is $1,997 a month. See pricing.
Related
- How to upload CSV files to Sales Navigator
- How to export a list from LinkedIn Sales Navigator
- Find an email from Sales Navigator
- Back to the blog hub
Build your first lead list without a Sales Navigator seat
Free to start. No credit card. 1,000 records to spend whenever you like.
Get your free API key →