Contact Information Extraction
Email, phone, LinkedIn and location from every PDF resume
Extract name, email, phone, LinkedIn profile and location from PDF resumes as structured JSON.
How it works
- 1
Full resume parsing
Contact extraction is part of the full parse. When you call POST /v1/parse, contact information is returned alongside work experience, education and languages in a single response. There is no separate endpoint for contacts only.
- 2
Names in normal case
First and last name are returned as separate fields. Names written in all caps are converted to normal case.
- 3
LinkedIn profile
A LinkedIn profile URL is returned in the linkedInLink field, with the query string removed. Other URLs are not extracted.
- 4
Location fields
Location is returned as a readable string, plus separate locationCity, locationState and locationCountry fields when they can be identified. Country names are returned in English.
Key Benefits
Less manual data entry
Contact details often sit in headers, footers or sidebars. The parser reads the whole document and returns them in fixed fields.
Integration-ready fields
Every resume returns the same field names, so you can pipe the output into your ATS, CRM or email automation. Every field is optional.
Structured location
City, state and country are returned as separate fields when the resume makes them clear, which makes filtering by location straightforward.
Code examples
{
"data": {
"firstName": "Maria",
"lastName": "Johansson",
"emailAddress": "[email protected]",
"phoneNumber": "+46 70 123 4567",
"locationCity": "Stockholm",
"locationState": "Stockholm County",
"locationCountry": "Sweden",
"linkedInLink": "https://www.linkedin.com/in/example",
"workExperiences": [
{
"title": "Backend Developer",
"organization": "Example AB",
"location": "Stockholm, Sweden",
"startMonth": 6,
"startYear": 2021,
"endMonth": null,
"endYear": null,
"isOngoing": true,
"skillsDescription": "- Built payment processing services in Java"
}
],
"languages": [
{ "language": "Swedish", "level": "Native" },
{ "language": "English", "level": "Fluent" }
]
},
"usage": { "billedAs": "free", "freeRemaining": 49, "creditBalance": 0 }
}Technical Details
Contact extraction runs as part of the resume parse, not as a separate service. The language model identifies contact information anywhere on the page (header, footer, sidebar or body) and maps it to dedicated fields: firstName, lastName, emailAddress, phoneNumber, location, locationCity, locationState, locationCountry, linkedInLink. Names written in all caps are converted to normal case and LinkedIn URLs have their query string removed. Every field is optional, so check for missing values. The API is hosted on Hetzner in Helsinki, Finland; /v1/parse does not store the PDF or the parsed result, and resume text is processed by OpenAI (US) as a subprocessor.
Frequently asked questions
firstName, lastName, emailAddress, phoneNumber, location, locationCity, locationState, locationCountry, linkedInLink. Every field is optional.
The API returns one email address and one phone number. Test with your own resumes if this case is common in your applicant pool.
No. There is no OCR, so the PDF needs a text layer.
The /v1/parse endpoint does not store the PDF or the parsed result. The API is hosted on Hetzner in Helsinki, Finland, and resume text is processed by OpenAI (US) as a subprocessor. If you need an on-premise setup, contact us.
Related pages
Skill Extraction API
Get each role's description, with the skills used, tied to the job where they were used. PDF to structured JSON with one API call.
FeaturesPDF Resume Parser
Parse single-column and multi-column PDF resumes into structured JSON with one API call. PDF up to 5 MB. Parsing is synchronous and can take up to 60 seconds.
SolutionsResume Parser for Staffing Agencies
Turn candidate CVs into ATS-ready JSON with one API call. Contact details, work history, education, and languages. Prepaid credits that don't expire. 50 free parses per month.
FeaturesWork Experience Extraction
Parse job titles, organizations, dates and role descriptions from PDF resumes. Handles "Present" dates and overlapping roles.
Check the output on your resumes
50 free parses per month. Compare the extracted contact fields against your manually entered records.