{"product_id":"score-ats-candidates-automate-outreach-campaigns-in-n8n","title":"Score ATS Candidates \u0026 Automate Outreach Campaigns in n8n","description":"\u003ch3\u003eScore ATS Candidates Automatically—and Launch Outreach Campaigns from n8n\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow receives a new job order from your ATS, optionally uses Anthropic to extract job requirements, finds and scores matching candidates, checks Supabase suppression\/engagement history, then upserts a scheduled outreach campaign—with an optional Slack launch summary.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eIngests job orders via webhook\u003c\/strong\u003e: Listens for “job order created” events (or runs manually) and normalizes the payload into a consistent job spec using your configured ATS field mapping.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eExtracts skills with Anthropic (optional)\u003c\/strong\u003e: If the job order lacks enough structured skills, calls the \u003cstrong\u003eAnthropic Messages API\u003c\/strong\u003e to extract required and preferred skills, then merges them back into the job spec.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eSearches candidates in your ATS\u003c\/strong\u003e: Uses your ATS API to retrieve candidates (or falls back to a built-in sample candidate pool when the ATS isn’t connected).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eScores matches with clear reasons\u003c\/strong\u003e: Normalizes candidates (including \u003cstrong\u003eE.164 phone formatting\u003c\/strong\u003e), excludes ineligible statuses, deduplicates results, and computes a transparent match score with human-readable explanations.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGates outreach using Supabase\u003c\/strong\u003e: Fetches \u003cstrong\u003eopt-outs\u003c\/strong\u003e, \u003cstrong\u003erecent touches\u003c\/strong\u003e, and \u003cstrong\u003eactive enrollments\u003c\/strong\u003e from \u003cstrong\u003eSupabase\u003c\/strong\u003e to suppress candidates who shouldn’t be contacted (or uses demo\/empty history if Supabase isn’t configured).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eUpserts campaign + enrollments\u003c\/strong\u003e: Writes the job order, campaign, and candidates into Supabase, links IDs, and inserts enrollment rows with the \u003cstrong\u003efirst touch scheduled (not sent)\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eOptionally posts to Slack\u003c\/strong\u003e: Sends a formatted launch summary to \u003cstrong\u003eSlack\u003c\/strong\u003e after the campaign is created.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eRecruiting teams that want \u003cstrong\u003eATS-to-campaign automation\u003c\/strong\u003e when a new role opens.\u003c\/li\u003e\n  \u003cli\u003eSaaS operators who need controlled outreach with \u003cstrong\u003esuppression rules\u003c\/strong\u003e and \u003cstrong\u003eengagement history\u003c\/strong\u003e tracking in Supabase.\u003c\/li\u003e\n  \u003cli\u003eAutomation engineers building repeatable \u003cstrong\u003en8n workflows\u003c\/strong\u003e for candidate matching and campaign scheduling.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eIntegrations\u003c\/strong\u003e: ATS API, \u003cstrong\u003eAnthropic Messages API\u003c\/strong\u003e, \u003cstrong\u003eSupabase\u003c\/strong\u003e, \u003cstrong\u003eSlack\u003c\/strong\u003e (optional).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003en8n nodes used\u003c\/strong\u003e: \u003cem\u003eif\u003c\/em\u003e, \u003cem\u003ecode\u003c\/em\u003e, \u003cem\u003eno op\u003c\/em\u003e, \u003cem\u003emerge\u003c\/em\u003e, \u003cem\u003ewebhook\u003c\/em\u003e, and \u003cem\u003esticky note\u003c\/em\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eSetup\u003c\/strong\u003e: Configure your ATS webhook subscription to send “job order created” events to the workflow webhook URL.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":46123148378291,"sku":"N8N-20111","price":28.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/P-RiCXKmWSs93MZAyfxOS_eB1BZhJ4.png?v=1790673150","url":"https:\/\/buyflowscripts.com\/products\/score-ats-candidates-automate-outreach-campaigns-in-n8n","provider":"N8N Commerce","version":"1.0","type":"link"}