Look Up Contact
Find a person in Topo’s lead database without saving or enriching them.
POST
/
v1
/
contacts
/
lookup
Lookup Contact
curl --request POST \
--url https://api.topo.io/v1/contacts/lookup \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"linkedin_url": "<string>",
"email": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"company_name": "<string>",
"company_domain": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
linkedin_url: '<string>',
email: '<string>',
first_name: '<string>',
last_name: '<string>',
company_name: '<string>',
company_domain: '<string>'
})
};
fetch('https://api.topo.io/v1/contacts/lookup', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.topo.io/v1/contacts/lookup"
payload = {
"linkedin_url": "<string>",
"email": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"company_name": "<string>",
"company_domain": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"found": true,
"first_name": "<string>",
"last_name": "<string>",
"job_title": "<string>",
"headline": "<string>",
"location": "<string>",
"seniority": "<string>",
"department": "<string>",
"years_of_experience": 123,
"linkedin_url": "<string>",
"profile_picture_url": "<string>",
"company_name": "<string>",
"company_domain": "<string>",
"company_linkedin_url": "<string>",
"company_industry": "<string>",
"company_employee_count": 123,
"company_country": "<string>"
}Find a person in Topo’s lead database and read their profile and current
employer.
The LinkedIn URL is the surest match, then the email, then the first and last
name with the current employer’s name or domain. The response never carries
an email or a phone number. Nothing is written to your workspace and no credit
is spent: use Enrich Contact to find
an email and save the contact.
A person the lead database does not hold returns
found: false.
Requires the contacts:read scope on the API key.Authorizations
Bearer API key issued from Settings → Developers.
Body
application/json
Lookup Contact payload
LinkedIn profile URL, the surest match.
Email.
First name, matched with last_name and the employer.
Last name.
Current employer name.
Current employer's primary domain.
Response
200 - application/json
Successful Response
Whether Topo's lead database holds a matching profile.
First name.
Last name.
Job title.
Profile headline.
Location.
Seniority.
Department.
Years of professional experience.
LinkedIn profile URL.
Profile picture URL.
Current employer name.
Current employer's primary domain.
Current employer's LinkedIn page URL.
Current employer's industry.
Current employer's headcount.
Current employer's headquarters country.
Was this page helpful?
⌘I
Lookup Contact
curl --request POST \
--url https://api.topo.io/v1/contacts/lookup \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"linkedin_url": "<string>",
"email": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"company_name": "<string>",
"company_domain": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
linkedin_url: '<string>',
email: '<string>',
first_name: '<string>',
last_name: '<string>',
company_name: '<string>',
company_domain: '<string>'
})
};
fetch('https://api.topo.io/v1/contacts/lookup', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.topo.io/v1/contacts/lookup"
payload = {
"linkedin_url": "<string>",
"email": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"company_name": "<string>",
"company_domain": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"found": true,
"first_name": "<string>",
"last_name": "<string>",
"job_title": "<string>",
"headline": "<string>",
"location": "<string>",
"seniority": "<string>",
"department": "<string>",
"years_of_experience": 123,
"linkedin_url": "<string>",
"profile_picture_url": "<string>",
"company_name": "<string>",
"company_domain": "<string>",
"company_linkedin_url": "<string>",
"company_industry": "<string>",
"company_employee_count": 123,
"company_country": "<string>"
}