with one click
salesnav-lists
CRUD operations on Sales Navigator lead lists and account lists.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
CRUD operations on Sales Navigator lead lists and account lists.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Terminal automation skills for web platforms. CLI commands — no browser needed after initial auth.
Web market / industry analysis from a SimilarWeb FREE account: list 200+ industry categories and rank the top + rising websites in any industry by traffic share, visits, engagement, and month-over-month change.
Website traffic analytics from a SimilarWeb FREE account: overview, traffic & engagement, weekly visit trend, marketing channels, audience geography, similar sites, referrals, social traffic, and display advertising. Covers a single most-recent month, worldwide.
Backlink analytics from SimilarWeb: backlink summary with TLD/country distribution, top referring domains, and individual backlinks with source URLs, anchors, and domain/page scores.
Side-by-side domain comparison using SimilarWeb Pro: engagement metrics, traffic channels, device split, rankings, and more.
SEO keyword research from SimilarWeb: SEO overview, keyword rank distribution, top organic/paid pages, keyword gap analysis, and SEO trends.
| name | salesnav-lists |
| description | CRUD operations on Sales Navigator lead lists and account lists. |
CRUD operations on Sales Navigator lead lists and account lists.
www.linkedin.com/sales/... tab kept openRequests run inside your Chrome tab (via CDP), not from Node — this is what lets them past LinkedIn's sales-api edge. So a Sales Navigator tab must stay open for every command (reads and mutations), not just auth. If no /sales/ tab is open, open one (see chrome-cdp "Agent guidance"): node skills/chrome-cdp/scripts/cdp.mjs open https://www.linkedin.com/sales/home.
One-time auth — open Sales Navigator in Chrome, then:
node salesnav-lists.mjs auth
# Lead lists (default)
node salesnav-lists.mjs list
# Account lists
node salesnav-lists.mjs list --type=account
# With pagination
node salesnav-lists.mjs list --type=lead --count=50 --start=0
node salesnav-lists.mjs view 6789012345
node salesnav-lists.mjs members 6789012345
node salesnav-lists.mjs members 6789012345 --count=50 --start=0
node salesnav-lists.mjs create --name="My Target List" --type=lead
node salesnav-lists.mjs create --name="Target Accounts" --type=account --description="Q2 targets"
# Preview without executing
node salesnav-lists.mjs create --name="Test" --type=lead --dry-run
node salesnav-lists.mjs update 6789012345 --name="New Name"
node salesnav-lists.mjs update 6789012345 --description="Updated description"
node salesnav-lists.mjs update 6789012345 --name="New Name" --description="New desc"
node salesnav-lists.mjs delete 6789012345
# Preview without executing
node salesnav-lists.mjs delete 6789012345 --dry-run
# Add leads
node salesnav-lists.mjs add 6789012345 "urn:li:fs_salesProfile:(ACwAABCD,NAME_SEARCH,abc1)"
# Add multiple (comma-separated)
node salesnav-lists.mjs add 6789012345 "urn:li:fs_salesProfile:(ACwAABCD,NAME_SEARCH,abc1),urn:li:fs_salesProfile:(ACwAAEFGH,NAME_SEARCH,def2)"
# Add accounts
node salesnav-lists.mjs add 6789012345 "urn:li:fs_salesCompany:12345"
node salesnav-lists.mjs remove 6789012345 "urn:li:fs_salesProfile:(ACwAABCD,NAME_SEARCH,abc1)"
li_at + JSESSIONID), and writes a marker session.json. Cookies stay in Chrome — every request (reads and mutations) runs in-page with credentials:'include'.GET /sales-api/salesApiLists?q=listType&listType=LEAD|ACCOUNT with sort/filter/decoration params.GET /sales-api/salesApiLists/<listId> with decoration for metadata.salesApiLeadSearch) or account search (salesApiAccountSearch) filtered by LEAD_LIST or ACCOUNT_LIST.POST /sales-api/salesApiLists with X-Restli-Method: CREATE header.POST /sales-api/salesApiLists/<listId> with X-Restli-Method: PARTIAL_UPDATE header and REST-li patch body.DELETE /sales-api/salesApiLists/<listId>.POST /sales-api/salesApiLists/<listId>?action=addEntities|removeEntities with entity URN array body.~/.local/share/showrun/data/salesnav-lists/
├── session.json Session marker (cookies stay in Chrome)
└── cache/
├── lists-lead.json Cached lead lists
├── lists-account.json Cached account lists
├── list-<id>.json Cached individual list details
└── members-<id>.json Cached list members
If you see a 401 or 403 error, re-authenticate:
node salesnav-lists.mjs auth
--dry-run to inspect the request.--dry-run flag is available on all mutating commands (create, update, delete, add, remove) to preview the request without executing it.