{ "name": "HR Resume Screening with Verifiable Decision Receipts", "nodes": [ { "parameters": { "httpMethod": "POST", "path": "resume-screening", "options": {}, "responseMode": "responseNode" }, "id": "6a00ef79-f92f-4454-ad87-e4404a61a825", "name": "Resume Received", "type": "n8n-nodes-base.webhook", "typeVersion": 2.1, "position": [ 0, 300 ], "webhookId": "a788f6eb-59a2-49f4-895d-6a8fc7d11d1d" }, { "parameters": { "modelId": { "__rl": true, "mode": "list", "value": "gpt-4o", "cachedResultName": "GPT-4O" }, "messages": { "values": [ { "role": "system", "content": "=You are an HR screening AI. Score the candidate 0-100 against the role and return JSON: {\"score\":0,\"recommendation\":\"ADVANCE|REJECT\",\"rationale\":\"...\"}." }, { "content": "=Score this candidate. JSON only.\n\nRole: {{ $json.body.role }}\nResume:\n{{ $json.body.resume }}" } ] }, "jsonOutput": true, "options": {} }, "id": "ab9fb94a-baed-4ff1-8fa2-1fb8a11c9004", "name": "AI Candidate Score", "type": "@n8n/n8n-nodes-langchain.openAi", "typeVersion": 2.1, "position": [ 220, 300 ], "credentials": { "openAiApi": { "id": "REPLACE_OPENAI_CRED_ID", "name": "OpenAi account" } } }, { "parameters": { "operation": "generateReceipt", "agentName": "HRScreeningAgent", "workflowName": "={{ $workflow.name }}", "action": "={{ 'Candidate ' + $json.message.content.recommendation }}", "decision": "={{ JSON.stringify($json.message.content) }}", "additionalFields": { "modelProvider": "openai", "modelUsed": "gpt-4o", "decisionType": "hiring_screen", "riskLevel": "high", "humanReview": true, "policies": "eu-ai-act-high-risk, eeoc-fairness", "permissions": "candidate.screen", "tags": "hr, hiring, ai-act" } }, "id": "944eea60-5b06-41ab-aaca-45cf949c224b", "name": "Signatrust: Receipt", "type": "n8n-nodes-signatrust.signatrust", "typeVersion": 1, "position": [ 440, 300 ], "credentials": { "signatrustApi": { "id": "REPLACE_SIGNATRUST_CRED_ID", "name": "Signatrust API account" } } }, { "parameters": { "sendTo": "compliance@yourcompany.com", "subject": "={{ 'Candidate result: ' + $('AI Candidate Score').item.json.message.content.recommendation }}", "message": "={{ 'Score: ' + $('AI Candidate Score').item.json.message.content.score + '\\nReceipt: ' + $json.id }}", "options": {}, "emailType": "text" }, "id": "fa931edc-2561-43f3-8c47-c6a742051d71", "name": "Email Recruiter", "type": "n8n-nodes-base.gmail", "typeVersion": 2.1, "position": [ 660, 300 ], "credentials": { "gmailOAuth2": { "id": "REPLACE_GMAIL_CRED_ID", "name": "Gmail account" } } }, { "parameters": { "content": "## HR Resume Screening + Signatrust\nUnder the EU AI Act, hiring is **high-risk**. Every AI candidate score is signed into a Decision Receipt (with human_review flagged) so the decision is explainable and auditable.", "height": 200, "width": 430, "color": 5 }, "id": "dab84671-3ebb-49d6-b54e-102ae5da61d9", "name": "Sticky Note 734c88", "type": "n8n-nodes-base.stickyNote", "typeVersion": 1, "position": [ -40, 30 ] } ], "connections": { "Resume Received": { "main": [ [ { "node": "AI Candidate Score", "type": "main", "index": 0 } ] ] }, "AI Candidate Score": { "main": [ [ { "node": "Signatrust: Receipt", "type": "main", "index": 0 } ] ] }, "Signatrust: Receipt": { "main": [ [ { "node": "Email Recruiter", "type": "main", "index": 0 } ] ] } }, "active": false, "pinData": {}, "settings": { "executionOrder": "v1" }, "tags": [ { "name": "HR Resume Screening — HR" }, { "name": "HR Resume Screening — Hiring" }, { "name": "Signatrust (4)" }, { "name": "HR Resume Screening — AI-Act" } ], "meta": { "templateCredsSetupCompleted": false }, "versionId": "ad33e856-6832-42e0-9a51-3a7e8adeac89" }