Skip to main content
Nodes used: Parse, Extract This example turns a resume into candidate data you can filter on: name, contact details, years of experience, and three tables of rows for skills, education and work history. Each table is an object field, which is how a repeating list is modelled on the typed graph.

The workflow

Run it and read the result

The files field accepts PDF, DOCX and images. Poll the run until its status is processed.

Response

The results envelope of a processed run, trimmed. A current role comes back with end_date.value: null.

Tips

  • DOCX resumes give better results than scanned PDFs. The text is native, so nothing is lost to OCR.
  • There is no list data type. Model a free-form list as an object with one nested field, as skills does here. See Field types.
  • Describe end_date as “empty if this is the current role”. The model then returns null instead of guessing a date.
  • Declare years_of_experience as integer. You can filter candidates on it without parsing text.
  • Resumes state dates as “March 2021”. A date field normalises them to the first of the month.

Next steps

Upload and run

The multipart request, idempotency and filename rules

Field types

Objects, enums and the other field shapes