[{"data":1,"prerenderedAt":414},["ShallowReactive",2],{"workflow-automate-cv-processing-prefill-job-applications-ai-en":3},{"locale_id":4,"workflow_id":5,"title":6,"locale":7,"seo_meta_title":8,"seo_meta_description":9,"seo_keywords":10,"seo_fields":11,"category":12,"tools":15,"tags":39,"variants":40,"status":43,"slug":44,"pricing":45,"created_at":46,"updated_at":47,"outcome":48,"outcome_msg":49,"static":50,"description":53,"documentation":54,"steps":112,"faq":113,"n8n_workflow":114,"created_by":20,"packages":352,"_ssrCustomizations":20},655259,935,"Automate CV Processing & Pre-fill Job Applications with AI","en","Automate CV Processing Prefill Job Applications AI","Automate automate cv processing prefill job applications AI using this n8n template. Deploy instantly and customize workflows to fit your needs.","n8n, AI, job application, CV processing, resume extraction, HR automation, Airtable, LangChain, OpenAI, forms",{"meta_title":8,"meta_description":9,"keywords":10},{"id":13,"name":14},4,"HR & People Operations",[16,23,29,34],{"content_id":17,"locale_id":18,"locale":7,"name":19,"description":20,"display_dropdown":21,"id":18,"parent_id":17,"workflow_count":22},7,17460,"n8n",null,false,811,{"content_id":24,"locale_id":25,"locale":7,"name":26,"description":20,"display_dropdown":27,"id":25,"parent_id":24,"workflow_count":28},12,16569,"OpenAI",true,412,{"content_id":30,"locale_id":31,"locale":7,"name":32,"description":20,"display_dropdown":21,"id":31,"parent_id":30,"workflow_count":33},26,17299,"LangChain",494,{"content_id":35,"locale_id":36,"locale":7,"name":37,"description":20,"display_dropdown":27,"id":36,"parent_id":35,"workflow_count":38},37,16618,"Airtable",59,[],[41],{"variant_type":19,"variant_type_label":19,"version":42,"is_active":27},"1.0.0","published","automate-cv-processing-prefill-job-applications-ai","29.00","2025-11-11T08:02:39.848000Z","2026-01-19T03:32:31.333000Z","Accelerate job application processing by 80% and eliminate manual CV data entry, enhancing candidate experience and saving HR teams valuable time.","",{"feature":51,"output":52},[],[],"Manually sifting through CVs and inputting applicant data is slow, error-prone, and creates a cumbersome experience for candidates. This workflow leverages AI to instantly extract key information from CVs, validate document types, and pre-fill detailed application forms, drastically reducing manual effort and improving applicant satisfaction.",{"root":55},{"type":56,"format":49,"indent":57,"version":58,"children":59,"direction":68},"root",0,1,[60,69,74,79,104,108],{"tag":61,"type":62,"format":49,"indent":57,"version":58,"children":63,"direction":68},"h2","heading",[64],{"mode":65,"text":66,"type":67,"style":49,"detail":57,"format":58,"version":58},"normal","AI-Powered Job Application Workflow","text","ltr",{"type":70,"format":49,"indent":57,"version":58,"children":71,"direction":68},"paragraph",[72],{"mode":65,"text":73,"type":67,"style":49,"detail":57,"format":57,"version":58},"This n8n workflow revolutionizes the job application process by combining smart forms with advanced AI to automate CV screening, data extraction, and form pre-filling. It ensures a seamless experience for applicants while significantly reducing the manual workload for HR teams.",{"tag":75,"type":62,"format":49,"indent":57,"version":58,"children":76,"direction":68},"h3",[77],{"mode":65,"text":78,"type":67,"style":49,"detail":57,"format":58,"version":58},"Key Features",{"type":80,"format":49,"indent":57,"version":58,"children":81,"listType":103,"direction":68},"list",[82,87,91,95,99],{"type":83,"format":49,"indent":57,"version":58,"children":84,"direction":68},"listitem",[85],{"mode":65,"text":86,"type":67,"style":49,"detail":57,"format":57,"version":58},"Intelligent CV Upload & Validation: Automatically checks if uploaded documents are valid CVs using AI, prompting for re-upload if invalid.",{"type":83,"format":49,"indent":57,"version":58,"children":88,"direction":68},[89],{"mode":65,"text":90,"type":67,"style":49,"detail":57,"format":57,"version":58},"Contextual Data Extraction: Extracts relevant applicant information (name, contact, education, skills, experience, cover letter) from CVs, tailored to specific job post requirements.",{"type":83,"format":49,"indent":57,"version":58,"children":92,"direction":68},[93],{"mode":65,"text":94,"type":67,"style":49,"detail":57,"format":57,"version":58},"Dynamic Form Pre-filling: Uses extracted AI data to automatically populate subsequent application forms, eliminating repetitive manual entry for candidates.",{"type":83,"format":49,"indent":57,"version":58,"children":96,"direction":68},[97],{"mode":65,"text":98,"type":67,"style":49,"detail":57,"format":57,"version":58},"Centralized Applicant Tracking: Seamlessly saves all candidate data and original CVs to Airtable for organized tracking and easy access.",{"type":83,"format":49,"indent":57,"version":58,"children":100,"direction":68},[101],{"mode":65,"text":102,"type":67,"style":49,"detail":57,"format":57,"version":58},"Enhanced Candidate Experience: Provides a smooth, efficient two-step application process with intelligent feedback and pre-filled forms.","bullet",{"tag":75,"type":62,"format":49,"indent":57,"version":58,"children":105,"direction":68},[106],{"mode":65,"text":107,"type":67,"style":49,"detail":57,"format":58,"version":58},"How It Works",{"type":70,"format":49,"indent":57,"version":58,"children":109,"direction":68},[110],{"mode":65,"text":111,"type":67,"style":49,"detail":57,"format":57,"version":58},"The workflow starts with a user-friendly n8n form for CV submission. The uploaded PDF is then processed by an \"Extract from File\" node, and its content is validated as a CV using an AI \"Text Classifier\". If valid, a LangChain \"Application Suitability Agent\" node, powered by OpenAI, extracts specific details and generates a tailored cover letter based on the provided job description. This structured data and the original CV are then saved to Airtable. Finally, the applicant is redirected to a second n8n form, where the extracted information is pre-filled, allowing for review and submission, completing the application.","1. **Set up Credentials:**\n   * Add your OpenAI API Key credentials in n8n.\n   * Add your Airtable Personal Access Token credentials in n8n.\n2. **Configure Airtable:**\n   * Create a new Airtable base for \"Job Applications\".\n   * Ensure your base has a table with columns matching the expected AI output: `Name`, `Address`, `Email`, `Telephone`, `Education`, `Skills & Technologies`, `Years of Experience`, `Cover Letter`, `Submitted By`, and a `File` attachment column.\n   * Update the 'Save to Airtable' and 'Save to Airtable1' nodes with your specific Base ID and Table ID.\n3. **Update Redirect URL:**\n   * In the 'Redirect To Step 2 of 2' node, update `https://\u003CHOST>/form/job-application-step2of2` to your n8n instance's base URL (e.g., `https://your.n8n.cloud/form/job-application-step2of2`).\n4. **Activate Workflow:**\n   * Save and activate the workflow.\n   * Access the 'Step 1 of 2 - Upload CV' form URL to begin testing.",[],[115],{"variant":19,"preview":116,"version":42,"notes":118,"workflow":119},[117],"prod/935/preview/n8n/0646_Extractfromfile_Form_Export_Webhook.png","Initial release with core automation features",{"meta":120,"nodes":122,"pinData":291,"connections":292},{"instanceId":121},"408f9fb9940c3cb18ffdef0e0150fe342d6e655c3a9fac21f0f644e8bedabcd9",[123,130,137,144,150,158,166,171,178,184,190,195,206,216,226,232,242,250,258,263,269,278,286],{"id":124,"name":125,"type":126,"position":127,"typeVersion":58},"10565888-4a1b-439a-a188-c6ee7990bb63","Extract from File","n8n-nodes-base.extractFromFile",[128,129],860,260,{"id":131,"name":132,"type":133,"position":134,"typeVersion":58},"583aff4b-d9f5-44e7-8e91-4938592b5630","OpenAI Chat Model1","@n8n/n8n-nodes-langchain.lmChatOpenAi",[135,136],1740,380,{"id":138,"name":139,"type":140,"position":141,"typeVersion":143},"3a09afd0-0dce-41fd-bec3-783fcb3d01fc","Structured Output Parser","@n8n/n8n-nodes-langchain.outputParserStructured",[142,136],1920,1.2,{"id":145,"name":146,"type":133,"position":147,"typeVersion":58},"541a00d0-1635-48ad-b69e-83b28e178d6e","OpenAI Chat Model2",[148,149],1020,420,{"id":151,"name":152,"type":153,"position":154,"typeVersion":157},"19e4ad5b-2f96-491c-bcb3-52cca526ff82","Step 1 of 2 - Upload CV","n8n-nodes-base.formTrigger",[155,156],460,220,2.2,{"id":159,"name":160,"type":161,"position":162,"typeVersion":165},"ec54096b-5f9f-444e-87b1-db99197731f1","Save to Airtable","n8n-nodes-base.airtable",[163,164],2340,320,2.1,{"id":167,"name":168,"type":169,"position":170,"typeVersion":58},"127965b3-a2c6-443b-942d-8691b5bcb25d","Classify Document","@n8n/n8n-nodes-langchain.textClassifier",[148,129],{"id":172,"name":173,"type":174,"position":175,"typeVersion":177},"b82476c8-b285-467f-b344-e1f667f42479","Upload File to Record","n8n-nodes-base.httpRequest",[176,164],2540,4.2,{"id":179,"name":180,"type":181,"position":182,"typeVersion":58},"ee6f59ee-781f-4ed4-8cec-b7de70a82dac","Form Success","n8n-nodes-base.form",[183,164],3900,{"id":185,"name":186,"type":161,"onError":187,"position":188,"typeVersion":165},"43d46474-b9f8-4adf-89f8-d4c993641448","Save to Airtable1","continueErrorOutput",[189,164],3720,{"id":191,"name":192,"type":153,"position":193,"typeVersion":157},"38115307-824c-4354-917c-b18e93178f87","Step 2 of 2 - Application Form",[194,164],3520,{"id":196,"name":197,"type":198,"position":199,"parameters":202,"typeVersion":58},"1171540b-ebb2-41cb-b9f1-2da335caaece","Sticky Note","n8n-nodes-base.stickyNote",[200,201],300,20,{"color":17,"width":203,"height":204,"content":205},430,381,"## 1. Application Form To Upload CV\n[Learn more the Form Trigger node](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.formtrigger/)\n\nOur application process starts with a simple file upload to get the applicant's CV for processing.",{"id":207,"name":208,"type":198,"position":209,"parameters":212,"typeVersion":58},"4791901b-31a6-44c3-a1da-9c32b78cf305","Sticky Note1",[210,211],760,17.5,{"color":17,"width":213,"height":214,"content":215},774,593,"## 2. Document Classifier and ReUpload Form\n[Read more about the Text Classifier](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.text-classifier/)\n\nForm validation remains a critical step and before the introduction of LLMs, classifying document types was a relatively troublesome process. Today, n8n's text classifier node does an excellent job at this task.\n\nContextual validation powered by AI means invalid, incomplete or poorly created applicant CVs can be rejected as a quality check. When this happens in our workflow, we present the user again with the file upload form to retry.",{"id":217,"name":218,"type":198,"position":219,"parameters":222,"typeVersion":58},"4dc1a316-15b7-4568-9910-79b4a7989dcb","Sticky Note2",[220,221],1560,-20,{"color":17,"width":223,"height":224,"content":225},648,584,"## 3. Smarter Application Pre-fill with Job Role Context\n[Read more about the Basic LLM node](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.chainllm)\n\nInformation extraction is a logical next step once we have our PDF contents but we can extend further by only extracting data which is relevant to our job post. This ensure the information we extract is always relevant which saves time for the hiring team.\n\nTo achieve this for this demo, I've included the job post in the prompt for the LLM to compare the CV against. The provides the AI enough context to complete the task successfully.",{"id":227,"name":228,"type":229,"position":230,"typeVersion":231},"76006a7b-32ce-4606-be98-9a7b7b451215","Application Suitability Agent","@n8n/n8n-nodes-langchain.chainLlm",[135,156],1.5,{"id":233,"name":234,"type":198,"position":235,"parameters":238,"typeVersion":58},"cfc6a1a1-d42c-49b1-a93b-4a04e7e88521","Sticky Note3",[236,237],2240,40,{"color":17,"width":239,"height":240,"content":241},528,524,"## 4. Save to Applicant Tracking System\n[Read more about the Airtable node](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.airtable/)\n\nNext, we can complete our simple data capture by integrating and pushing data to our Applicant Tracking System.\n\nHere, we're using Airtable because we can also store PDF files in our rows.\n\nSee our example Airtable here: [https://airtable.com/appQ6mE9KSzlvaGDT/shrIivfe9qH6YEYAs](https://airtable.com/appQ6mE9KSzlvaGDT/shrIivfe9qH6YEYAs)",{"id":243,"name":244,"type":198,"position":245,"parameters":247,"typeVersion":58},"8f21067f-a851-4480-84b8-bb37eddfd7d6","Sticky Note4",[246,237],2780,{"color":17,"width":248,"height":240,"content":249},575.8190139534884,"## 5. Redirect to Application Form\n[Learn more about Form Ending](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.form/#form-ending)\n\nFinally to complete the form flow for step 1 of 2, we'll use a form ending node to redirect the user to step 2 of 2.\n\nHere, we using query params as part of our redirect as this will pre-fill the form fields in step 2 of 2.",{"id":251,"name":252,"type":198,"position":253,"parameters":255,"typeVersion":58},"2ba9cea6-173f-45be-bdda-a6ef061d91f5","Sticky Note5",[254,237],3380,{"color":17,"width":256,"height":240,"content":257},788,"## 6. Application Form to Amend Details\n[Learn more about Forms](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.form)\n\nIn the second part of the application process, applicants are presented with a form containing multiple fields to complete. This step has often been a source of frustration for many, as they end up duplicating information that’s already in their CV.\n\nIf our redirection with prefilled data works as intended, this issue will be resolved, as the fields will be automatically populated by our LLM during step 1 of 2. This also allows candidates the opportunity to review and refine the application fields before submitting.",{"id":259,"name":260,"type":181,"position":261,"typeVersion":58},"5add63c3-19d4-4035-a718-b1c125a03c67","File Upload Retry",[262,136],1340,{"id":264,"name":265,"type":181,"position":266,"typeVersion":58},"cc27b37f-26f5-47c3-9ac2-4412352070e5","Redirect To Step 2 of 2",[267,268],3120,280,{"id":270,"name":271,"type":198,"position":272,"parameters":275,"typeVersion":58},"1cba63a9-57cb-4e17-a601-2bd64fb50dbf","Sticky Note6",[273,274],-140,-240,{"width":149,"height":276,"content":277},640,"## Try It Out!\n\n### This n8n template combines form file uploads with AI components to create a simple but effective job application submission flow.\nIt's a perfect low-cost solution without the bells and whistles of the surface yet is highly advanced with its use of AI.\n\n### How it works\n* The application submission process starts with an n8n form trigger to accept CV files in the form of PDFs.\n* The PDF is validated using the text classifier node to determine if it is a valid CV.\n* A basic LLM node is used to extract relevant information from the CV as data capture. A copy of the original job post is included to ensure relevancy.\n* Applicant's data is then sent to an ATS for processing. For our demo, we used airtable because we could attach PDFs to rows.\n* Finally, a second form trigger is used to allow the applicant to amend any of the generated application fields.\n\n\n### Need Help?\nJoin the [Discord](https://discord.com/invite/XPKeKXeB7d) or ask in the [Forum](https://community.n8n.io/)!\n\nHappy Hacking!\n",{"id":279,"name":280,"type":198,"position":281,"parameters":283,"typeVersion":58},"4289f9f2-2286-4bc7-9045-c645ff292341","Sticky Note7",[282,155],3060,{"height":284,"content":285},120,"### 🚨 Change Base URL here!\nThis redirect requires the full base URL, change it to the host of your n8n instance.",{"id":287,"name":288,"type":181,"position":289,"typeVersion":58},"fca5b2ab-291f-4ac3-b4e1-13911666359f","Submission Success",[290,268],2900,{},{"Save to Airtable":293,"Classify Document":298,"Extract from File":304,"File Upload Retry":308,"Save to Airtable1":312,"OpenAI Chat Model1":318,"OpenAI Chat Model2":323,"Submission Success":327,"Upload File to Record":331,"Step 1 of 2 - Upload CV":335,"Structured Output Parser":339,"Application Suitability Agent":344,"Step 2 of 2 - Application Form":348},{"main":294},[295],[296],{"node":173,"type":297,"index":57},"main",{"main":299},[300,302],[301],{"node":228,"type":297,"index":57},[303],{"node":260,"type":297,"index":57},{"main":305},[306],[307],{"node":168,"type":297,"index":57},{"main":309},[310],[311],{"node":125,"type":297,"index":57},{"main":313},[314,316],[315],{"node":180,"type":297,"index":57},[317],{"node":180,"type":297,"index":57},{"ai_languageModel":319},[320],[321],{"node":228,"type":322,"index":57},"ai_languageModel",{"ai_languageModel":324},[325],[326],{"node":168,"type":322,"index":57},{"main":328},[329],[330],{"node":265,"type":297,"index":57},{"main":332},[333],[334],{"node":288,"type":297,"index":57},{"main":336},[337],[338],{"node":125,"type":297,"index":57},{"ai_outputParser":340},[341],[342],{"node":228,"type":343,"index":57},"ai_outputParser",{"main":345},[346],[347],{"node":160,"type":297,"index":57},{"main":349},[350],[351],{"node":186,"type":297,"index":57},[353,376,399],{"id":354,"name":355,"description":356,"pricing":357,"currency":358,"stripe_pricing":359,"is_active":27,"hosting":21,"revision_count":58,"tool_tips":360,"items":363,"created_dt":374,"last_updated_dt":375,"is_basic_package":21},"5258e380-032b-4394-a362-7fe9a81c8918","Customize","Template + tailored configuration",199,"USD",19900,{"title":361,"description":362},"Most popular choice","We'll configure the template for you -- adjusting prompts, keywords, and rules.",[364,366,368,370,372],{"text":365},"Complete workflow template",{"text":367},"Setup documentation",{"text":369},"Minor customization (prompts & configuration)",{"text":371},"Personalized keyword rules",{"text":373},"Priority email support","2025-12-14T14:56:53.877943Z","2025-12-14T14:56:53.878010Z",{"id":377,"name":378,"description":379,"pricing":380,"currency":358,"stripe_pricing":381,"is_active":27,"hosting":27,"revision_count":382,"tool_tips":383,"items":386,"created_dt":397,"last_updated_dt":398,"is_basic_package":21},"2bf66945-2e37-4ae8-a16c-3701198b0e25","Manage","2 rounds of revision, and hosting setup",499,49900,2,{"title":384,"description":385},"Hands-off solution","Complete setup and hosting. Includes 2 revision rounds plus a year of support.",[387,389,391,393,395],{"text":388},"Everything in Custom Setup",{"text":390},"2 rounds of revisions to tailor workflow to your needs",{"text":392},"Complete hosting setup",{"text":394},"Integration testing",{"text":396},"1 month warranty","2025-12-14T14:56:25.015547Z","2025-12-14T14:56:25.015580Z",{"id":400,"name":401,"description":402,"pricing":403,"currency":358,"stripe_pricing":290,"is_active":27,"hosting":21,"revision_count":57,"tool_tips":404,"items":407,"created_dt":412,"last_updated_dt":413,"is_basic_package":27},"f5dfbd54-5d04-4ae1-85ef-007db52e88f7","Workflow","Ready-to-use workflow template",29,{"title":405,"description":406},"Perfect for DIY users","Get the template and set it up yourself with our guide.",[408,409,410],{"text":365},{"text":367},{"text":411},"Community support","2025-12-14T14:55:49.328495Z","2025-12-14T14:55:49.328523Z",1776680520299]