Contact Lookalikes
Changed onFind contacts similar to a set of seed contacts using AI-powered recommendations.
Provide seed contacts via LinkedIn URLs, emails, Lusha IDs, or name + company. The API returns contacts who share similar roles, seniority, and company profiles.
Required: 5–100 seeds. seeds must contain at least 5 and at most 100 contacts in total, counted across all identifier types combined (linkedinUrls + emails + ids + contactIds + contacts). A request with fewer than 5 total seeds is rejected with 400. Fewer than 5 seeds does not give the model enough signal to produce useful lookalikes.
Pagination without duplicates: On your first request, omit dedupeSessionId — the server generates one and returns it. Pass it on every subsequent request to get more results without repeating contacts already seen. Sessions are retained for 30 days.
Use the exclude field to always filter out specific contacts (e.g. existing customers).
Results are lightweight previews. Use Enrich Contacts with the returned id to get emails and phones.
Billing: Charged per result via the lookalikeContact action.
Persisting to a table: Pass tableId to also persist matching results into an existing table. See Contacts Tables.
Request
- Base URLhttps://api.lusha.com
- AuthAPI key in header api_key
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Request body
Example request
{
"dedupeSessionId": "58adaa77-7a6e-4c9b-8c2d-820a6538e613",
"seeds": {
"linkedinUrls": [
"https://www.linkedin.com/in/orit-shilvock-6243bb5"
],
"contacts": [
{
"firstName": "Miri",
"lastName": "Tamir",
"companyDomain": "lusha.com",
"companyName": "Lusha"
}
],
"emails": [
"gal.ashkelon@lusha.com"
],
"ids": [
"1234",
"4567"
],
"contactIds": [
1234,
4567
]
},
"exclude": {
"linkedinUrls": [
"https://www.linkedin.com/in/orit-shilvock-6243bb5"
],
"contacts": [
{
"firstName": "Miri",
"lastName": "Tamir",
"companyDomain": "lusha.com",
"companyName": "Lusha"
}
],
"emails": [
"gal.ashkelon@lusha.com"
],
"ids": [
"1234",
"4567"
],
"contactIds": [
1234,
4567
]
},
"limit": 25,
"tableId": "482910"
}Response
Successfully retrieved contact lookalikes
Example response
{
"dedupeSessionId": "58adaa77-7a6e-4c9b-8c2d-820a6538e613",
"results": [
{
"id": "4389064624",
"firstName": "Yehuda",
"lastName": "Rapp",
"socialLinks": {
"linkedin": "https://www.linkedin.com/in/yehuda-rapp-53909b99"
},
"company": {
"id": "16303253",
"name": "Lusha",
"domain": "www.lusha.com"
},
"jobTitle": {
"title": "Senior Solutions Engineer",
"departments": [
"Engineering & Technical"
],
"seniority": "Senior"
},
"location": {
"country": "Israel",
"state": "Tel Aviv District",
"city": "Tel Aviv"
}
}
],
"meta": {
"returned": 25,
"hasMore": true
},
"tableWrite": {
"tableId": "482910",
"added": 3,
"alreadyPresent": 2,
"rowsProcessed": 5,
"rowsCharged": 5
},
"billing": {
"creditsCharged": 3,
"resultsReturned": 1
}
}Changes
- breaking
added to the
request propertyallOflist - breaking
added to the
request propertyallOflist - breaking
the request property
became not nullable - breaking
the request property
became not nullable - breaking
the
request property type changed fromobjectto no type - breaking
the
request property type changed fromobjectto no type - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/ - warning
removed the request property
/
- breaking