Authentication
string
required
Your API key
Query Parameters
string
required
The search identifier returned by
POST /reverse-contact/single.Example: 550e8400-e29b-41d4-a716-446655440000curl -X GET "https://api.reverselooker.com/reverse-contact/single?id=550e8400-e29b-41d4-a716-446655440000" \
-H "x-api-key: your_api_key"
const searchId = '550e8400-e29b-41d4-a716-446655440000';
const response = await fetch(
`https://api.reverselooker.com/reverse-contact/single?id=${searchId}`,
{
headers: {
'x-api-key': 'your_api_key'
}
}
);
const data = await response.json();
if (data.qualification === 'found') {
console.log(data.result);
}
import requests
search_id = '550e8400-e29b-41d4-a716-446655440000'
response = requests.get(
f'https://api.reverselooker.com/reverse-contact/single?id={search_id}',
headers={
'x-api-key': 'your_api_key'
}
)
data = response.json()
if data['qualification'] == 'found':
print(data['result'])
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"email": "john.doe@company.com",
"created_at": "2024-01-15T10:30:00Z",
"qualification": "found",
"result": {
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"headline": "Senior Software Engineer at Company",
"company_name": "Company Inc.",
"location": "San Francisco, California",
"linkedin_url": "https://linkedin.com/in/johndoe",
"locale": "en_US",
"summary": "Experienced software engineer with 10+ years...",
"skills": ["JavaScript", "Python", "AWS", "React"],
"experience": {
"experience_count": 4,
"experience_history": [
{
"title": "Senior Software Engineer",
"company": "Company Inc.",
"start_date": "2020-01",
"end_date": null,
"duration": "4 years"
},
{
"title": "Software Engineer",
"company": "Previous Corp",
"start_date": "2016-06",
"end_date": "2019-12",
"duration": "3 years 6 months"
}
]
},
"education": {
"education_history": [
{
"school_name": "Stanford University",
"degree_name": "Bachelor's Degree",
"field_of_study": "Computer Science"
}
]
}
}
}
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"email": "john.doe@company.com",
"created_at": "2024-01-15T10:30:00Z",
"qualification": "ongoing",
"result": null
}
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"email": "john.doe@company.com",
"created_at": "2024-01-15T10:30:00Z",
"qualification": "not_found",
"result": null
}
{
"error": "Invalid API key"
}
{
"error": "Search not found"
}
Response
string
required
Unique search identifier.
string
required
The searched email.
string
required
Search creation date (ISO 8601 format).
string
required
Search status:
ongoing, found, or not_found.object
The LinkedIn profile found.
null if qualification is not found.Show Profile properties
Show Profile properties
string
First name
string
Last name
string
Full name
string
LinkedIn headline/title
string
Current company
string
Location
string
LinkedIn profile URL
string
Profile language (e.g.,
en_US, fr_FR)string
Profile summary/bio
string[]
List of skills
object
Polling
The search may take a few seconds. Implement polling to check the status:async function waitForResult(searchId, apiKey, maxAttempts = 10) {
for (let i = 0; i < maxAttempts; i++) {
const response = await fetch(
`https://api.reverselooker.com/reverse-contact/single?id=${searchId}`,
{ headers: { 'x-api-key': apiKey } }
);
const data = await response.json();
if (data.qualification !== 'ongoing') {
return data;
}
// Wait 2 seconds before retrying
await new Promise(resolve => setTimeout(resolve, 2000));
}
throw new Error('Timeout: search still ongoing');
}
To avoid polling, configure a webhook when creating the search. You will be automatically notified when the search is complete.