Search people
curl --request POST \
--url https://api.datalayer.so/v1/people/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"query": "Example",
"limit": 10,
"offset": 0
}
'import requests
url = "https://api.datalayer.so/v1/people/search"
payload = {
"query": "Example",
"limit": 10,
"offset": 0
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({query: 'Example', limit: 10, offset: 0})
};
fetch('https://api.datalayer.so/v1/people/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"results": [
{
"person_id": "456",
"name": "Example Person",
"title": null,
"company_name": null,
"location": null,
"country": null,
"profile_url": "https://www.linkedin.com/in/example-person/",
"source_updated_at": null
}
],
"offset": 0,
"limit": 10,
"total": {
"value": null,
"relation": "gte"
}
},
"meta": {
"request_id": "example-request-001",
"retrieved_at": "2026-09-21T12:00:00Z",
"upstream_requests": 1,
"billing_status": "search_included",
"profiles_used": 0
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}People
Search people
Find professional profile previews by query or exact company name; optionally filter by title, country, or skill. At least one of query/company is required. Included with an active grant; no profile deduction. Staging has returned successful results in about 20–23 seconds. The provider HTTP request is bounded at 30 seconds, with an 8-second Elasticsearch query timeout; timed-out or failed-shard partial responses are rejected.
Search people
curl --request POST \
--url https://api.datalayer.so/v1/people/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"query": "Example",
"limit": 10,
"offset": 0
}
'import requests
url = "https://api.datalayer.so/v1/people/search"
payload = {
"query": "Example",
"limit": 10,
"offset": 0
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({query: 'Example', limit: 10, offset: 0})
};
fetch('https://api.datalayer.so/v1/people/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"results": [
{
"person_id": "456",
"name": "Example Person",
"title": null,
"company_name": null,
"location": null,
"country": null,
"profile_url": "https://www.linkedin.com/in/example-person/",
"source_updated_at": null
}
],
"offset": 0,
"limit": 10,
"total": {
"value": null,
"relation": "gte"
}
},
"meta": {
"request_id": "example-request-001",
"retrieved_at": "2026-09-21T12:00:00Z",
"upstream_requests": 1,
"billing_status": "search_included",
"profiles_used": 0
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Supply
query or company (or both). Company filtering uses an exact company name.
You can also filter by title, country and skill. Country codes are two uppercase
letters, such as US.
Results are previews and do not prove current employment. Use a returned person ID
for person lookup. People search can be slow or time
out; use focused filters and bounded retries.Authorizations
Send Authorization: Bearer dl_live_<64 lowercase hexadecimal characters>. Approved users can create account-scoped, revocable keys in the Datalayer dashboard. A key does not grant a profile allowance. Dashboard session cookies are not API credentials.
Body
application/json
- Option 1
- Option 2
Required string length:
1 - 200Required string length:
1 - 200Required string length:
1 - 200Pattern:
^[A-Z]{2}$Required string length:
1 - 200Required range:
1 <= x <= 25Required range:
0 <= x <= 1000