Skip to content
FlowHubFluxonLab
Auto-fixing Output Parser
AI Automationfree

Extract data from resume and create PDF with Gotenberg

by Oskaradapted from n8n official workflow galleryUpdated Aug 2026
RequiresAuto-fixing Output ParserAuto-fixing Output ParserBBasic LLM ChainCCodeHTTP RequestHTTP RequestOpenAI Chat ModelOpenAI Chat ModelStructured Output ParserStructured Output ParserTelegramTelegram
Share Post Share
OpenAI Chat ModelOpenAI Chat Mod…CoConvert education to HTMLConvert educati…OPAuto-fixing Output ParserAuto-fixing Out…OpenAI Chat Model1OpenAI Chat Mod…OPStructured Output ParserStructured Outp…CoConvert employment history to HTMLConvert employm…CoConvert projects to HTMLConvert project…CoConvert volunteering to HTMLConvert volunte…Telegram triggerIfAuthNONo operation (unauthorized)No operation (u…IfCheck if start messageCheck if start …NONo operation (start message)No operation (s…Get fileEFExtract text from PDFExtract text fr…SeSet parsed filedsSet parsed file…SePersonal infoSeTechnologiesSeEmployment historyEmployment hist…SeEducationSeProjectsSeVolunteeringMeMerge education and employment historyMerge education…MeMerge projects and volunteeringMerge projects …MeMerge personal info and technologiesMerge personal …MeMerge allSeSet final dataCoConvert raw to base64Convert raw to …CTConvert to HTMLHRGenerate plain PDF docGenerate plain …Send PDF to the userSend PDF to the…CLParse resume dataParse resume da…MeMerge other data12345678910111213141516171819202122232425262728293031323334353637
1/5
STEPS · 37
Starts on a Telegram event

With this workflow you can extract data from resume documents uploaded via a Telegram bot. Workflow transform readable content of PDF resume into structured data, using AI nodes and returns PDF with formatted, plain HTML. You can modify this workflow to perform other actions with structured data (e.g. insert it into database or create other, well-formatted documents). Functionality of this workflow was presented during the n8n community call on March 7, 2024 - recording of presentation available here. ⚠️ Workflow made for demo purposes. If you want to use it in real life, please make sure necessary measures for personal data protection are set. How it works? User uploads readable PDF resume document into Telegram bot. After authentication based on chat ID parameter, workflow extracts text from the PDF and transfers it into AI chain with connected sub-nodes: OpenAI Chat Model and Structured Output (JSON) Parser. Then, each extracted section (employment history, projects etc.) is formatted into desired HTML structure. Finally, the document is converted into new, structured PDF using Gotenberg. 💡 This workflow requires installed Gotenberg.

Tags

n8nreference-onlychain-llmlm-chat-open-aioutput-parser-autofixingoutput-parser-structuredtelegram
Connects
autofixingoutputparserAuto-fixing Output ParserBBasic LLM ChainCCodeWHTTP RequestopenaichatmodelOpenAI Chat ModelstructuredoutputparserStructured Output Parser
CategoryAI Automation
Triggermanual
Complexityadvanced
Nodes33
AddedMar 13, 2024

Related workflows

See all AI Automation
BCWopenaichatmodel
free

Audit landing page CRO and log results with OpenAI and Data Tables

Quick overview This workflow collects a landing page URL, scrapes its HTML, and uses OpenAI to generate a structured conversion-rate-optimization (CRO) audit with scores and prioritized tips, then renders a styled report in the browser and logs each audit to an n8n Data Table. How it works Presents an n8n Form where the user submits a landing page URL. Fetches the landing page HTML via an HTTP request with retries, and routes to an error page if the URL can’t be retrieved. Sends the scraped HTML and URL to OpenAI to produce a CRO audit including an overall score, category scores, a written roast, and a ranked list of optimization tips. Uses a structured output parser with an OpenAI “fixer” model to validate and auto-correct the AI response into the required JSON schema. Builds a styled HTML report from the structured audit results. Logs the audit metadata (URL, score, verdict, summary, language, timestamp) to an n8n Data Table and displays the report back in the user’s browser. Setup Add an OpenAI API credential and select it for both the main OpenAI model and the output-fixer model. Create or select an n8n Data Table (for example, “CRO Audit Log”) and map the columns used for url,

by Dr. Firas
autofixingoutputparserBopenaichatmodelstructuredoutputparser
free

Force AI to use a specific output format

This workflow is for anyone looking to automatically fetch, validate, and parse complex language-based queries into a structured format. Its unique capability lies in not only processing language but also fixing invalid outputs before structuring them. Note that to use this template, you need to be on n8n version 1.19.4 or later.

by n8n Team
BsheetsWopenaichatmodel
free

Turn LinkedIn post reactions into AI content ideas with OpenAI and Google Sheets

Quick overview This workflow runs daily to fetch your recent LinkedIn post reactions via a RapidAPI LinkedIn endpoint, uses OpenAI to turn each reacted post into a structured original content idea, and appends or updates the results in a Google Sheets idea vault without duplicates. How it works Runs every day at 08:00 using a schedule trigger. Loads configurable settings like your LinkedIn username, reaction type filter, recency window, max posts to analyze, OpenAI model, and output language. Calls the linkedin-api8 RapidAPI endpoint to retrieve posts you recently reacted to and splits the response into individual reaction items. Filters reactions to keep only the selected reaction type (or all when blank) and posts newer than the configured number of days. Limits the number of reactions sent for analysis to control cost. Sends each source post (author, reaction, text, and URL) to OpenAI to generate a structured content idea (category, angle, hook, takeaway, format, and hashtags). Saves each idea to Google Sheets using an upsert that matches on Post URL to avoid duplicate rows. Setup Create a RapidAPI subscription for linkedin-api8 and add an HTTP Header Auth credential that sends

by Dr. Firas