Person Enrichment Datalegion API
Enrich one person from an email, a phone number or a social profile URL into Data Legion's premium profile with contact data: emails, phone numbers, location, age and sex, plus current job and employer, seniority, job function, decision-maker flag, years of experience, work history, education, certifications, skills and social profiles.
Tarifs
Tarifs de l’API Person Enrichment Datalegion
L’appeler
Obtenez Person Enrichment Datalegion en une requête
import os, requests res = requests.post( "https://api.getanyapi.com/v1/run/person_enrichment.datalegion", headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"}, json={}, ) print(res.json())
{
"data": {
"age": 29,
"averageTenureMonths": 29,
"birthDate": "2024-01-15T09:30:00Z",
"birthDay": 42,
"birthMonth": 42,
"birthYear": 2024,
"certifications": [
{
"credentialId": "a1b2c3d4",
"expirationDate": "2024-01-15T09:30:00Z",
"institution": "example",
"issueDate": "2024-01-15T09:30:00Z",
"name": "Example title"
}
],
"company": {
"companyId": "Acme Inc",
"industry": "general",
"linkedinId": "https://example.com/page",
"linkedinUrl": "https://example.com/page",
"name": "Example title",
"size": "example",
"website": "https://example.com/page"
},
"datasetVersion": "example",
"education": [
{
"degree": "example",
"degreeLevel": "example",
"endDate": "2024-01-15T09:30:00Z",
"fieldOfStudy": "example",
"isCurrent": true,
"schoolLinkedinUrl": "https://example.com/page",
"schoolName": "Example title",
"schoolWebsite": "https://example.com/page",
"startDate": "2024-01-15T09:30:00Z"
}
],
"emails": [
{
"address": "123 Main St",
"confidence": "a1b2c3d4",
"isCurrent": true,
"lastSeenUtc": 42,
"numSources": 42,
"type": "general",
"validated": true,
"validationStatus": "active"
}
],
"expenseCategory": "general",
"experience": [
{
"companyId": "Acme Inc",
"companyIndustry": "Acme Inc",
"companyLinkedinId": "https://example.com/page",
"companyLinkedinUrl": "https://example.com/page",
"companyName": "Acme Inc",
"companySize": "Acme Inc",
"companyWebsite": "https://example.com/page",
"description": "A short example description of this item.",
"endDate": "2024-01-15T09:30:00Z",
"expenseCategory": "general",
"isCurrent": true,
"isDecisionMaker": true,
"isPlatformWorker": true,
"jobFunction": "example",
"seniority": "example",
"startDate": "2024-01-15T09:30:00Z",
"tenureMonths": 12.5,
"title": "Example title"
}
],
"firstName": "Alex",
"fullName": "Alex Rivera",
"headline": "Example title",
"highestDegree": "example",
"isDecisionMaker": true,
"isPlatformWorker": true,
"jobChangedUtc": 42,
"jobFunction": "example",
"jobTitle": "Example title",
"jobVerifiedUtc": 42,
"languages": [
{
"name": "Example title",
"proficiency": "example"
}
],
"lastInitial": "example",
"lastName": "Rivera",
"lastSeenUtc": 42,
"legionId": "a1b2c3d4",
"linkedinConnections": 42,
"linkedinFollowers": 12500,
"linkedinId": "https://example.com/page",
"linkedinUrl": "https://example.com/page",
"location": {
"country": "US",
"countryCode": "US",
"locality": "example",
"region": "CA",
"regionCode": "CA"
},
"locations": [
{
"addressLine2": "123 Main St",
"confidence": "a1b2c3d4",
"continent": "example",
"country": "US",
"countryCode": "US",
"geo": "example",
"isCurrent": true,
"lastSeenUtc": 42,
"locality": "example",
"postalCode": "94107",
"region": "CA",
"regionCode": "CA",
"streetAddress": "123 Main St"
}
],
"matchConfidence": "a1b2c3d4",
"matchType": "general",
"matchedOn": [
"example"
],
"middleInitial": "a1b2c3d4",
"middleName": "Example title",
"mobilePhone": "+1 555-0142",
"numSources": 42,
"phones": [
{
"confidence": "a1b2c3d4",
"isCurrent": true,
"lastSeenUtc": 42,
"numSources": 42,
"number": "example",
"type": "general"
}
],
"prefix": "example",
"profiles": [
{
"confidence": "a1b2c3d4",
"isCurrent": true,
"lastSeenUtc": 42,
"network": "example",
"profileId": "a1b2c3d4",
"url": "https://example.com/page",
"username": "alex_rivera"
}
],
"seniority": "example",
"sex": "example",
"skills": [
"example"
],
"suffix": "example",
"summary": "A short example description of this item.",
"workEmail": "alex@example.com",
"yearsOfExperience": 2024
},
"found": true,
"reason": "not_found"
}Référence complète des paramètres et de la réponse : chaque champ, type et exemple de cet endpoint.
Référence
Une requête, une seule forme de réponse.
Chaque champ que vous envoyez et chaque champ que vous recevez, avec un vrai exemple.
Dernière vérification : 2026-10-25 · disponibilité et latence mesurées sur 30d
Corps de la requête
JSON, envoyé à cet endpoint.
- emailstring
Any email address the person uses, work or personal. Send exactly one of email, phone or socialUrl.
- minConfidenceenum
Lowest match confidence that still counts as found. Omit it for Data Legion's default.
- phonestring
Phone number with its country code, e.g. +1 415 555 0100.
- requiredstring
Fields a match must have, as a Data Legion expression over its snake_case field names combined with AND, OR and parentheses, e.g. work_email OR mobile_phone, or phones.type:mobile. A match without them counts as not found.
- socialUrlstring
https://www.linkedin.com/in/dharmesh
Social profile URL: LinkedIn (linkedin.com/in/...), GitHub, X and similar networks. A LinkedIn URL matches most reliably.
Réponse
JSON, une valeur d’exemple par champ.
The enriched person, or null when nothing matched.
- ageinteger
Age in years.
- averageTenureMonthsnumber
Average months the person stays in a job.
- birthDatestring
Date of birth, as precise as Data Legion holds it.
- birthDayinteger
Day of the month of birth.
- birthMonthinteger
Month of birth, 1 to 12.
- birthYearinteger
Year of birth.
- datasetVersionstring
Data Legion dataset build the record came from.
- expenseCategorystring
Budget line of the current job, e.g. research_and_development, sales_and_marketing.
- firstNamestring
First name.
- fullNamestring
Full name, lowercase as Data Legion normalizes it.
- headlinestring
Profile headline, as the person writes it.
- highestDegreestring
Highest degree level, e.g. bachelors, masters, doctorate.
- isDecisionMakerboolean
True when the current job is a buying decision-maker role.
- isPlatformWorkerboolean
True when the current job is gig or platform work, such as ride-hailing or delivery.
- jobChangedUtcinteger
UTC epoch timestamp in seconds (Unix time) the current job last changed. Multiply by 1000 for a JS Date in milliseconds.
- jobFunctionstring
Function of the current job, e.g. engineering, sales, marketing.
- jobTitlestring
Current job title, lowercase.
- jobVerifiedUtcinteger
UTC epoch timestamp in seconds (Unix time) the current job was last confirmed. Multiply by 1000 for a JS Date in milliseconds.
- lastInitialstring
Last initial.
- lastNamestring
Last name.
- lastSeenUtcinteger
UTC epoch timestamp in seconds (Unix time) Data Legion last saw the person. Multiply by 1000 for a JS Date in milliseconds.
- legionIdstring
Data Legion persistent person id.
- linkedinConnectionsinteger
LinkedIn connection count; LinkedIn caps what it shows at 500.
- linkedinFollowersinteger
LinkedIn follower count.
- linkedinIdstring
LinkedIn numeric member id.
- linkedinUrlstring
LinkedIn profile URL.
- matchConfidencestring
How sure the match is: high, moderate or low.
- matchTypestring
How the identifier matched, e.g. exact.
- matchedOnstring[]
Identifiers the match was made on, e.g. linkedin_url or email.
- middleInitialstring
Middle initial.
- middleNamestring
Middle name.
- mobilePhonestring
Best mobile phone number, in E.164 form.
- numSourcesinteger
Number of sources Data Legion merged into this record.
- prefixstring
Name prefix, e.g. dr.
- senioritystring
Seniority of the current job, e.g. owner, c_level, director, manager, senior.
- sexstring
Sex, male or female.
- skillsstring[]
Skills listed on the profile, lowercase.
- suffixstring
Name suffix, e.g. jr.
- summarystring
Profile summary, as the person writes it.
- workEmailstring
Current work email address.
- yearsOfExperiencenumber
Years of work experience.
Professional certifications.
- credentialIdstring
Credential id the issuer assigned.
- expirationDatestring
Expiry month as YYYY-MM or year as YYYY.
- institutionstring
Issuing institution, lowercase.
- issueDatestring
Issue month as YYYY-MM or year as YYYY.
- namestring
Certification name, lowercase.
Current employer.
- companyIdstring
Data Legion persistent company id, the legionId company_enrichment.datalegion returns.
- industrystring
Employer industry.
- linkedinIdstring
Employer LinkedIn numeric id.
- linkedinUrlstring
Employer LinkedIn page URL.
- namestring
Employer name, lowercase.
- sizestring
Employer headcount band, e.g. 5001-10000.
- websitestring
Employer website domain.
Schools attended.
- degreestring
Degree earned, lowercase, e.g. master of science.
- degreeLevelstring
Degree level, e.g. bachelors, masters.
- endDatestring
End as YYYY-MM or YYYY.
- fieldOfStudystring
Field of study, lowercase.
- isCurrentboolean
True while the person is still enrolled.
- schoolLinkedinUrlstring
School LinkedIn page URL.
- schoolNamestring
School name, lowercase.
- schoolWebsitestring
School website domain.
- startDatestring
Start as YYYY-MM or YYYY.
Every email address Data Legion holds for the person, work and personal.
- addressstring
Email address.
- confidencestring
How sure Data Legion is the address belongs to the person: high, moderate or low.
- isCurrentboolean
True while the address is still in use.
- lastSeenUtcinteger
UTC epoch timestamp in seconds (Unix time) the address was last seen. Multiply by 1000 for a JS Date in milliseconds.
- numSourcesinteger
Number of sources the address was seen in.
- typestring
Kind of address, e.g. professional or personal.
- validatedboolean
True when Data Legion has checked the address with the mail server.
- validationStatusstring
Result of that check, e.g. valid.
Work history, current jobs marked isCurrent.
- companyIdstring
Data Legion persistent company id of the employer.
- companyIndustrystring
Employer industry.
- companyLinkedinIdstring
Employer LinkedIn numeric id.
- companyLinkedinUrlstring
Employer LinkedIn page URL.
- companyNamestring
Employer name, lowercase.
- companySizestring
Employer headcount band.
- companyWebsitestring
Employer website domain.
- descriptionstring
Job description, as the person writes it.
- endDatestring
End of the job as YYYY-MM or YYYY; absent for a current job.
- expenseCategorystring
Budget line of the job, e.g. research_and_development.
- isCurrentboolean
True for a job the person still holds.
- isDecisionMakerboolean
True when the job is a buying decision-maker role.
- isPlatformWorkerboolean
True when the job is gig or platform work.
- jobFunctionstring
Function of the job, e.g. engineering, sales.
- senioritystring
Seniority of the job, e.g. owner, director, manager.
- startDatestring
Start of the job as YYYY-MM or YYYY.
- tenureMonthsnumber
Months in the job.
- titlestring
Job title, lowercase.
Languages the person speaks.
- namestring
Language, lowercase, e.g. english.
- proficiencystring
Proficiency, e.g. native, professional.
Where the person lives now.
- countrystring
Country.
- countryCodestring
ISO 3166-1 alpha-2 country code, e.g. US.
- localitystring
City.
- regionstring
State or region.
- regionCodestring
ISO 3166-2 region code, e.g. US-MA.
Every place Data Legion holds for the person, current and past.
- addressLine2string
Second line of the address.
- confidencestring
How sure Data Legion is of the place: high, moderate or low.
- continentstring
Continent.
- countrystring
Country.
- countryCodestring
ISO 3166-1 alpha-2 country code, e.g. US.
- geostring
Coordinates as "lat,lon".
- isCurrentboolean
True for where the person lives now.
- lastSeenUtcinteger
UTC epoch timestamp in seconds (Unix time) the place was last seen. Multiply by 1000 for a JS Date in milliseconds.
- localitystring
City.
- postalCodestring
Postal code.
- regionstring
State or region.
- regionCodestring
ISO 3166-2 region code, e.g. US-MA.
- streetAddressstring
Street address.
Every phone number Data Legion holds for the person.
- confidencestring
How sure Data Legion is the number belongs to the person: high, moderate or low.
- isCurrentboolean
True while the number is still in use.
- lastSeenUtcinteger
UTC epoch timestamp in seconds (Unix time) the number was last seen. Multiply by 1000 for a JS Date in milliseconds.
- numSourcesinteger
Number of sources the number was seen in.
- numberstring
Phone number in E.164 form.
- typestring
Kind of line, e.g. mobile or landline.
Social profiles Data Legion links to the person.
- confidencestring
How sure Data Legion is the profile belongs to the person: high, moderate or low.
- isCurrentboolean
True while the profile is still active.
- lastSeenUtcinteger
UTC epoch timestamp in seconds (Unix time) the profile was last seen. Multiply by 1000 for a JS Date in milliseconds.
- networkstring
Network the profile is on, e.g. linkedin, github, x, facebook.
- profileIdstring
Numeric or opaque id on that network.
- urlstring
Profile URL.
- usernamestring
Handle on that network.
- foundboolean
False when Data Legion matched no person, or none at the requested confidence or with the required fields.
- reason"not_found"
Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
FAQ
À propos de l’API Person Enrichment Datalegion
L’API Person Enrichment Datalegion d’AnyAPI renvoie des données Person Enrichment en JSON normalisé à partir d’un appel POST à /v1/run/person_enrichment.datalegion. Enrich one person from an email, a phone number or a social profile URL into Data Legion's premium profile with contact data: emails, phone numbers, location, age and sex, plus current job and employer, seniority, job function, decision-maker flag, years of experience, work history, education, certifications, skills and social profiles. AnyAPI renvoie un schéma normalisé unique quelle que soit la source qui répond. Elle coûte à partir de 96,06 $US pour 1 000 requêtes, en dollars US, sans abonnement et sans minimum mensuel. Ces 30 derniers jours, 100,0% des appels Person Enrichment Datalegion passés par AnyAPI ont réussi, avec un temps de réponse médian de 2,3 secondes, sur 1 appels mesurés.