download google drive and http request and resize edit image
Configured with Chain LLM, Edit Image, Google Drive, HTTP Request, and additional nodes. Review the connections and setup before adapting this template.
Node categories in this workflow
- Trigger
- Transform
- Routing
- Files / media
- Web / API
- AI & models
Icons describe general node roles, inferred from node types. Inspect the parameters for the configured action.
Drag to pan; use + and − to zoom. Reconstructed from the exported node positions; nothing runs here. Dashed lines represent non-main connections. Full node names and notes appear below.
How it works
The exported workflow contains the following configured nodes. Their connections are shown above; inspect the JSON for the complete logic, expressions, and external actions.
| Node | Category | Type | Operation |
|---|---|---|---|
| When clicking ‘Test workflow’ | Trigger | Manual Trigger | See node parameters |
| Structured Output Parser | Transform | Output Parser Structured | See node parameters |
| Should Proceed To Stage 2? | Routing | If | See node parameters |
| Download Resume | Files / media | Google Drive | download |
| PDF-to-Image API | Web / API | HTTP Request | POST |
| Resize Converted Image | Files / media | Edit Image | resize |
| Google Gemini Chat Model | AI & models | LM Chat Google Gemini | See node parameters |
| Candidate Resume Analyser | AI & models | Chain LLM | See node parameters |
Setup
- Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
- Connect your own credentials through n8n’s credential store. Replace
REPLACE_WITH_*values with your resource identifiers. - Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
- Run with synthetic data and harmless destinations. Enable triggers only after checking the actual outputs.
Requirements
An n8n instance with the listed node types and compatible versions. Service-connected workflows may require accounts, credentials, or paid APIs.
Credential types declared in the source
googleDriveOAuth2ApigooglePalmApi
Workflow notes
Try me out!
Try me out!
This workflow converts a Candidate Resume PDF to an image which is then "read" by a Vision Language Model (VLM). The VLM assesses if the candidate's CV is a fit for the desired role.
This approach can be employed to combat "hidden prompts" planted in resumes to bypass and/or manipulate automated ATS systems using AI.
Need Help?
1. Download Candidate Resume
1. Download Candidate Resume
Read more about using Google Drive
For this demonstration, we'll pull the candidate's resume PDF from Google Drive but you can just as easily recieve this resume from email or your ATS.
It should be noted that our PDF is a special test case which has been deliberately injected with an AI bypass; the bypass is a hidden prompt which aims to override AI instructions and auto-qualify the candidate... sneaky!
Download a copy of this resume here: https://drive.google.com/file/d/1MORAdeev6cMcTJBV2EYALAwll8gCDRav/view?usp=sharing
2. Convert PDF to Image(s)
2. Convert PDF to Image(s)
Read more about using Stirling PDF
AI vision models can only accept images (and sometimes videos!) as non-text inputs but not PDFs at time of writing. We'll have to convert our PDF to an image in order to use it.
Here, we'll use a tool called Stirling PDF which can provide this functionality and can be accessed via a HTTP API. Feel free to use an alternative solution if available, otherwise follow the instructions on the Stirling PDF website to set up your own instance.
Additionally, we'll reduce the resolution of our converted image to speed up the processing done by the LLM. I find that about 75% of an A4 (30x40cm) is a good balance.
3. Parse Resume with Multimodal LLM
3. Parse Resume with Multimodal LLM
Read more about using Basic LLM Chain
Multimodal LLMs are LLMs which can accept binary inputs such as images, audio and/or video files. Most newer LLMs are by default multimodal and we'll use Google's Gemini here as an example. By processing each candidate's resume as an image, we avoid scenarios where text extraction fails due to layout issues or by picking up "hidden" or malicious prompts planted to subvert AI automated processing.
This vision model ensures the resume is read and understood as a human would. The hidden bypass is therefore rendered mute since the AI also cannot "see" the special prompt embedded in the document.
Data Privacy Warning!
Data Privacy Warning!
For demo purposes, we're using the public online version of Stirling PDF. It is recommended to setup your own private instance of Stirling PDF before using this workflow in production.
download google drive and http request and resize edit image
download google drive and http request and resize edit image
Purpose and structure
This folder contains the download google drive and http request and resize edit image workflow. Its executable nodes use chainLlm, editImage, googleDrive, httpRequest, if, lmChatGoogleGemini, manualTrigger, outputParserStructured. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.
Setup
Import inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.
Entry points
When clicking ‘Test workflow’
Verification
Sanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.
Attribution
https://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Editimage/0575_Editimage_Manual_Update_Webhook.json MIT; preserve source notices.