Sales Prospecting - Build Quality Lead Lists

Build targeted prospect lists with verified contact information

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit gooseworks-ai/goose-skills/skills/lead-generation/capabilities/sales-prospecting#main ~/.claude/skills/sales-prospecting

For one project only, change the path to .claude/skills/sales-prospecting.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text167 lines
sales-prospecting/SKILL.md167 lines5.3 KBpushed 96d agoRawView on GitHub

Sales Prospecting - Build Quality Lead Lists

Setup

Read your credentials from ~/.gooseworks/credentials.json:

export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")

If ~/.gooseworks/credentials.json does not exist, tell the user to run: npx gooseworks login

All endpoints use Bearer auth: -H "Authorization: Bearer $GOOSEWORKS_API_KEY"

Build targeted prospect lists with verified emails and contact information.

Workflow

Step 1: Define Target Companies

Search for companies matching your ICP:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"fiber","path":"/v1/natural-language-search/companies"}'
  "query": "B2B SaaS startups in San Francisco with 50-200 employees Series A or B funded"
}'

Step 2: Find Decision Makers

Search for people at target companies:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"fiber","path":"/v1/people-search"}'
  "searchParams": {
    "job_titles": ["CTO", "VP Engineering", "Head of Engineering"],
    "company_names": ["Stripe", "Figma", "Notion"],
    "locations": ["San Francisco"]
  }
}'

Step 3: Get All Emails for Company

Find all contacts at a domain:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"hunter","path":"/v2/domain-search","query":{"domain":"stripe.com"}}'

Step 4: Find Specific Contact's Email

Find email for a specific person:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"sixtyfour","path":"/find-email"}'
  "lead": {
    "first_name": "Sarah",
    "last_name": "Chen",
    "domain": "stripe.com"
  }
}'

Step 5: Verify Emails

Check deliverability before outreach:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"fiber","path":"/v1/validate-email/single","body":{"email":"[email protected]"}}'

Step 6: Enrich with Company Data

Get company context for personalization:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"brand-dev","path":"/v1/brand/retrieve","query":{"domain":"stripe.com"}}'

Prospecting Pipeline

# 1. Find companies (Fiber)
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"fiber","path":"/v1/company-search"}'
  "searchParams": {
    "industries": ["Software", "SaaS"],
    "employee_count_min": 50,
    "employee_count_max": 500,
    "locations": ["San Francisco", "New York"]
  }
}'

# 2. Find decision makers (Fiber)
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"fiber","path":"/v1/people-search"}'
  "searchParams": {
    "job_titles": ["VP Sales", "Head of Sales", "CRO"],
    "company_domains": ["company1.com", "company2.com"]
  }
}'

# 3. Get emails (Hunter)
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"hunter","path":"/v2/domain-search","query":{"domain":"company1.com"}}'

# 4. Verify emails (Fiber)
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"fiber","path":"/v1/validate-email/single","body":{"email":"[email protected]"}}'

Tips

  • Target specific job titles relevant to your product
  • Verify all emails before adding to sequences
  • Personalize outreach with company context
  • Track email engagement for list optimization

Discover More

List all endpoints, or add a path for parameter details:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"brand-dev API endpoints"}' api show fiber
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"hunter API endpoints"}' api show sixtyfour 

Example: curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/details \ -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"api":"olostep","path":"/v1/scrapes"}' for endpoint parameters.

1---
2name: sales-prospecting
3description: Build targeted prospect lists with verified contact information
4source: orthogonal
5---
6 
7 
8# Sales Prospecting - Build Quality Lead Lists
9 
10## Setup
11 
12Read your credentials from ~/.gooseworks/credentials.json:
13```bash
14export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
15export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")
16```
17 
18If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login`
19 
20All endpoints use Bearer auth: `-H "Authorization: Bearer $GOOSEWORKS_API_KEY"`
21 
22 
23Build targeted prospect lists with verified emails and contact information.
24 
25## Workflow
26 
27### Step 1: Define Target Companies
28Search for companies matching your ICP:
29 
30```bash
31curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
32 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
33 -H "Content-Type: application/json" \
34 -d '{"api":"fiber","path":"/v1/natural-language-search/companies"}'
35 "query": "B2B SaaS startups in San Francisco with 50-200 employees Series A or B funded"
36}'
37```
38 
39### Step 2: Find Decision Makers
40Search for people at target companies:
41 
42```bash
43curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
44 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
45 -H "Content-Type: application/json" \
46 -d '{"api":"fiber","path":"/v1/people-search"}'
47 "searchParams": {
48 "job_titles": ["CTO", "VP Engineering", "Head of Engineering"],
49 "company_names": ["Stripe", "Figma", "Notion"],
50 "locations": ["San Francisco"]
51 }
52}'
53```
54 
55### Step 3: Get All Emails for Company
56Find all contacts at a domain:
57 
58```bash
59curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
60 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
61 -H "Content-Type: application/json" \
62 -d '{"api":"hunter","path":"/v2/domain-search","query":{"domain":"stripe.com"}}'
63```
64 
65### Step 4: Find Specific Contact's Email
66Find email for a specific person:
67 
68```bash
69curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
70 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
71 -H "Content-Type: application/json" \
72 -d '{"api":"sixtyfour","path":"/find-email"}'
73 "lead": {
74 "first_name": "Sarah",
75 "last_name": "Chen",
76 "domain": "stripe.com"
77 }
78}'
79```
80 
81### Step 5: Verify Emails
82Check deliverability before outreach:
83 
84```bash
85curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
86 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
87 -H "Content-Type: application/json" \
88 -d '{"api":"fiber","path":"/v1/validate-email/single","body":{"email":"[email protected]"}}'
89```
90 
91### Step 6: Enrich with Company Data
92Get company context for personalization:
93 
94```bash
95curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
96 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
97 -H "Content-Type: application/json" \
98 -d '{"api":"brand-dev","path":"/v1/brand/retrieve","query":{"domain":"stripe.com"}}'
99```
100 
101## Prospecting Pipeline
102 
103```bash
104# 1. Find companies (Fiber)
105curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
106 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
107 -H "Content-Type: application/json" \
108 -d '{"api":"fiber","path":"/v1/company-search"}'
109 "searchParams": {
110 "industries": ["Software", "SaaS"],
111 "employee_count_min": 50,
112 "employee_count_max": 500,
113 "locations": ["San Francisco", "New York"]
114 }
115}'
116 
117# 2. Find decision makers (Fiber)
118curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
119 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
120 -H "Content-Type: application/json" \
121 -d '{"api":"fiber","path":"/v1/people-search"}'
122 "searchParams": {
123 "job_titles": ["VP Sales", "Head of Sales", "CRO"],
124 "company_domains": ["company1.com", "company2.com"]
125 }
126}'
127 
128# 3. Get emails (Hunter)
129curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
130 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
131 -H "Content-Type: application/json" \
132 -d '{"api":"hunter","path":"/v2/domain-search","query":{"domain":"company1.com"}}'
133 
134# 4. Verify emails (Fiber)
135curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
136 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
137 -H "Content-Type: application/json" \
138 -d '{"api":"fiber","path":"/v1/validate-email/single","body":{"email":"[email protected]"}}'
139```
140 
141## Tips
142 
143- Target specific job titles relevant to your product
144- Verify all emails before adding to sequences
145- Personalize outreach with company context
146- Track email engagement for list optimization
147 
148## Discover More
149 
150List all endpoints, or add a path for parameter details:
151 
152```bash
153curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
154 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
155 -H "Content-Type: application/json" \
156 -d '{"prompt":"brand-dev API endpoints"}' api show fiber
157curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
158 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
159 -H "Content-Type: application/json" \
160 -d '{"prompt":"hunter API endpoints"}' api show sixtyfour
161```
162 
163Example: `curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/details \
164 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
165 -H "Content-Type: application/json" \
166 -d '{"api":"olostep","path":"/v1/scrapes`"}' for endpoint parameters.
167 

Discussion

Alternatives

Also in Lead lists