Prospects

AI-generated prospect leads based on your ICP profiles. Prospects are created automatically by the system — you can read and update them.

Note: Prospects are read-only via API (except for updates). AI generation happens through the dashboard. Requires prospects:read scope.

GET/prospects

List AI-generated prospects with pagination.

limit(int)

Max results (default: 50, max: 500)

offset(int)

Pagination offset (default: 0)

Request
curl "https://kashew.ai/api/v1/prospects?limit=50&offset=0" \
  -H "Authorization: Bearer kshw_xxxxxxxx_xxxxx..."
200Response
{
  "prospects": [{
    "id": "uuid",
    "person_name": "Jane Smith",
    "company_name": "TechCorp",
    "email": "jane@techcorp.com",
    "job_title": "VP of Sales",
    "industry": "SaaS / Software",
    "country": "United States",
    "company_website": "https://techcorp.com",
    "linkedin_profile_url": "https://linkedin.com/in/janesmith",
    "created_at": "2026-05-20T10:00:00Z"
  }],
  "count": 120
}
GET/prospects/generated-leads

List AI-generated prospects that have not yet been promoted to leads.

limit(int)

Max results (default: 50, max: 500)

offset(int)

Pagination offset (default: 0)

search(string)

Search by name, company, or email

industry(string)

Filter by industry (exact match)

Request
curl "https://kashew.ai/api/v1/prospects/generated-leads?limit=50&offset=0" \
  -H "Authorization: Bearer kshw_xxxxxxxx_xxxxx..."
200Response
{
  "leads": [{
    "id": "uuid",
    "person_name": "Jane Doe",
    "company_name": "Acme Corp",
    "email": "jane@acme.com",
    "job_title": "CTO",
    "industry": "Technology",
    "is_added": false,
    "generation_source": "ai_generated",
    "icp_profile_id": "icp-uuid",
    "created_at": "2026-05-20T10:00:00Z"
  }],
  "count": 42
}
GET/prospects/generated-leads/:id

Get a single AI-generated prospect by ID.

Request
curl "https://kashew.ai/api/v1/prospects/generated-leads/uuid-..." \
  -H "Authorization: Bearer kshw_xxxxxxxx_xxxxx..."
PATCH/prospects/generated-leads/:id

Update fields on an AI-generated prospect. Only include fields you want to change.

Request Body
{
  "person_name": "Jane Smith",
  "company_name": "TechCorp Updated",
  "email": "jane.smith@techcorp.com",
  "phone": "+1 555-0123",
  "job_title": "SVP of Sales",
  "industry": "FinTech",
  "country": "United States",
  "company_website": "https://techcorp.com",
  "linkedin_profile_url": "https://linkedin.com/in/janesmith"
}
200Response
{ "id": "uuid", "status": "updated" }
GET/prospects/generated-leads

List AI-generated prospects that have not yet been promoted to leads. Supports search and industry filtering.

Scope: prospects:read

limit(int)

Max results (default: 50, max: 500)

offset(int)

Pagination offset (default: 0)

search(string)

Search person_name, company_name, email

industry(string)

Filter by industry (exact match)

Request
curl "https://kashew.ai/api/v1/prospects/generated-leads?limit=50&offset=0&search=acme" \
  -H "Authorization: Bearer kshw_xxxxxxxx_xxxxx..."
200Response
{
  "leads": [{
    "id": "uuid",
    "person_name": "Jane Doe",
    "company_name": "Acme Corp",
    "email": "jane@acme.com",
    "job_title": "CTO",
    "industry": "Technology",
    "is_added": false,
    "generation_source": "ai_generated",
    "created_at": "2026-04-15T10:00:00Z"
  }],
  "count": 42
}
POST/prospects/add-to-leads

Promote a prospect into the leads table. The source prospect is marked as added.

Scope: crm:write — Counts against leads_total plan limit.

Request Body (camelCase)
{
  "contactName": "Jane Doe",
  "companyName": "Acme Corp",
  "industry": "Technology",
  "country": "United States",
  "jobTitle": "CTO",
  "linkedinProfileUrl": "https://linkedin.com/in/janedoe",
  "email": "jane@acme.com",
  "phone": "+1234567890",
  "companyWebsite": "https://acme.com",
  "generatedLeadId": "prospect-uuid"
}

Fields

contactName(string)

Required — maps to lead.person_name

companyName(string)

Required — maps to lead.company_name

industry(string)

Industry vertical

country(string)

Country

jobTitle(string)

Job title

email(string)

Email address

phone(string)

Phone number

companyWebsite(string)

Maps to lead.website

linkedinProfileUrl(string)

LinkedIn URL

generatedLeadId(string)

Source prospect UUID — marks it as added

201Response
{
  "lead_id": "new-lead-uuid",
  "message": "Lead successfully added to leads table"
}