API / Response schema
Response schema
The stable parse envelope, and the 24-field candidate object returned by extraction. Fields are only ever added — never removed or renamed.
Parse envelope
| Field | Type | Description |
|---|---|---|
markdown | string | Full document in reading order; tables as HTML. |
chunks | array | Section-level blocks, split on headings. |
splits | array | One block per page. |
metadata | object | filename, page_count, dpi, duration_ms. |
instant_fields | object | emails, phones, links, linkedin, github. |
candidate_data | object | null | The 24-field object below (from extraction). |
candidate_data
Scalars are null when absent; lists are [].
| Field | Type |
|---|---|
first_name, last_name, email, phone_number | string |
address, date_of_birth, general_title | string |
summary_cover_letter | string |
total_work_experience | number |
resume_skills, hobbies_interests, driving_license, other_information | array<string> |
work_experience_details | array<experience> |
education_details | array<education> |
languages | array<language> |
certifications_conferences_seminars_courses, honors_awards | array<item> |
projects, publications, recommendations | array<item> |
volunteer_extracurricular_activities, exams | array<item> |
links | array<{url}> |
Key nested shapes
work_experience_details[] = { company_name, position_title, employment_type, // full_time|part_time|contract|intern start_date, end_date, currently_employed, // boolean position_description, position_keywords } education_details[] = { school_name, degree, // bachelor|master|phd|associate|high_school|other major, start_date, end_date, currently_pursuing, // boolean grade, description } languages[] = { language, proficiency } // conversational|professional|native_bilingual
Compatibility
The envelope follows a strict additive policy — new fields may appear, but existing fields keep their names and types. Parse defensively and ignore unknown fields.