POST
/
search
/
database
/
leads
Search database leads
curl --request POST \
  --url https://api.generect.com/api/v1/search/database/leads/ \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "job_titles": [
    "CEO",
    "Founder"
  ],
  "seniorities": [
    "CXO"
  ],
  "locations": [
    "San Francisco, CA"
  ],
  "company_industries": [
    "Software"
  ],
  "company_headcounts": [
    "51-200"
  ],
  "limit_by": 50
}
'
{
  "data": {
    "leads": [
      {
        "lead_id": "lead_abc123xyz",
        "first_name": "John",
        "last_name": "Doe",
        "title": "CEO"
      }
    ],
    "results_count": 1240
  },
  "meta": {
    "amount_charged": 24.8
  }
}

Use Case:

Search cached lead data with fast database filters.

Pricing

This is a billable endpoint — you are charged for each result returned. If no results are found, the request is free.
Your price decreases automatically as your lifetime spend grows. Check your current tier and pricing →

Authorizations

Authorization
string
header
required

Use the required Token prefix. Example: Authorization: Token xxxxxxxxx

Body

application/json
job_titles
string[]

Job titles held by the people you want to find. A lead only needs to match one of the titles you provide — adding more expands your search. Results may also include similar titles (e.g. "marketing manager" can return "content marketing manager"). Combine with seniorities to target both function and level. Examples: "sales development representative", "marketing manager", "software engineer".

seniorities
string[]

Job seniority levels at the lead's current employer (current position only, not previous roles). A lead needs to match at least one; adding more values expands your search. Allowed values: owner, founder, c_suite, partner, vp, head, director, manager, senior, entry, intern. Combine with job_titles to narrow targeting.

locations
string[]

Geographic locations where leads currently live — matches across cities, states/regions and countries. A lead needs to match at least one. To filter by the employer's HQ location, use company_locations. Examples: "San Francisco, California, United States", "Germany", "London".

exclude_locations
string[]

Locations to exclude from results.

company_locations
string[]

Headquarters location of the lead's current employer; a lead is included if their company's HQ matches at least one. Filters by where the company is based — distinct from locations, which is where the lead personally lives.

exclude_company_locations
string[]

Company locations to exclude.

company_industries
string[]

Industries of the lead's current employer; a lead is included if their company matches at least one. Values follow LinkedIn's industry taxonomy. Examples: "Software Development", "Financial Services", "Information Technology".

exclude_company_industries
string[]

Company industries to exclude.

company_headcounts
string[]

Size of the lead's current employer, as employee-count ranges; a lead is included if their company falls into at least one. Allowed values: "1-10", "11-50", "51-200", "201-500", "501-1000", "1001-5000", "5001-10000", "10001+".

exclude_company_headcounts
string[]

Company size ranges to exclude.

company_types
string[]

Company types: "Public Company", "Privately Held", "Non Profit", "Government Agency", "Educational", "Self Employed", "Partnership", "Self Owned".

company_name
string

Target company name (mutually exclusive with company_link and company_id).

LinkedIn company URL (mutually exclusive with company_name and company_id).

company_id
integer

LinkedIn company numeric ID (mutually exclusive with company_name and company_link).

without_company
boolean
default:false

Search by lead criteria only, without targeting a specific company.

personas
array[]

List of persona tuples. Each persona: [name, functions, seniorities, prohibits, priority?].

exclude_names
string[]

Skip leads by full name.

exclude_ids
string[]

Skip leads by Sales Navigator ID.

filter_empty_vars
string[]

Skip leads where these fields are empty. Options: job_started_on, profile_photo, started_at_position, company_website.

limit_by
integer

Maximum number of leads to return.

offset_by
integer

Number of leads to skip (for pagination).

strict
string[]

Fields to apply strict matching on (e.g. "company_locations").

Response

Full lead search results

data
object

Search results.

meta
object

Operation metadata returned in every data/meta response.