Discover and score engineering candidates with Groq, GitHub, LinkedIn, Stack Overflow, HN and Supabase
Quick Overview This workflow exposes a POST webhook that turns a job description into a structured hiring brief using Groq, searches candidates across GitHub, LinkedIn (via Apify), Stack Overflow, and Hacker News, scores and summarizes the shortlist, optionally saves results to Supabase, and returns a JSON response.
How it works Receives a candidate search request via a POST webhook and normalizes the payload into a consistent schema. Validates that the request includes a job description or structured criteria, and returns a 400 JSON error if it is invalid. Uses Groq (via LangChain) to extract structured job requirements, then builds a search brief with queries and limits for each source. Searches GitHub, LinkedIn via Apify, Stack Overflow, and Hacker News in parallel and normalizes each source’s results into a common candidate format. Merges all candidates, sanitizes and deduplicates the pool, and returns an empty 200 response if no candidates remain. Scores candidates with a deterministic evidence formula, filters by the configured score threshold, and builds a recruiter-facing JSON report. Uses Groq (via LangChain) to generate an AI shortlist summary, attaches it to the report, optionally saves qualified candidates to Supabase, and responds with the final JSON results.
Setup Copy the webhook URL from the Candidate Search Webhook node and configure your client/application to send POST requests to it. Add Groq credentials for the two AI steps (job requirement extraction and shortlist summarization) and select the configured chat models. Add an Apify bearer token credential for the LinkedIn profile search actor and ensure the actor is available in your Apify account. Configure GitHub API access (token/bearer auth if needed for your rate limits) and confirm the GitHub Search and User endpoints are reachable from your n8n instance. If you enable saving, add Supabase credentials and ensure a table named candidates exists with fields matching the workflow’s insert mapping.
Related Templates
Send structured logs to BetterStack from any workflow using HTTP Request
Send structured logs to BetterStack from any workflow using HTTP Request Who is this for? This workflow is perfect for...
Google Sheets UI for n8n Workflow
Google Sheets UI for Workflow Control This n8n template provides a practical and efficient way to manage your n8n workf...
Restore your workflows from GitHub
This workflow restores all n8n instance workflows from GitHub backups using the n8n API node. It complements the Backup ...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments