The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Performance Review Assistant with Verifiable Decision Receipts",
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "performance-review",
"options": {},
"responseMode": "responseNode"
},
"id": "f18ff90b-ef0c-43ca-bd20-b25c45071409",
"name": "Performance Review Assistant",
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
0,
300
]
},
{
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "GPT-4O"
},
"messages": {
"values": [
{
"role": "system",
"content": "=You are an HR performance-review AI assistant. Return JSON: {\"summary\":\"...\",\"rating_suggestion\":\"...\",\"reason\":\"...\"}."
},
{
"content": "=Return JSON only.\n\nInput:\n{{ JSON.stringify($json.body) }}"
}
]
},
"jsonOutput": true,
"options": {}
},
"id": "1dce327d-8a02-4159-9394-2404e722723d",
"name": "AI Decision",
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 2.1,
"position": [
220,
300
],
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "generateReceipt",
"agentName": "PerfReviewAgent",
"workflowName": "={{ $workflow.name }}",
"action": "={{ 'AI decision: ' + ($json.message.content.decision || $json.message.content.recommendation || 'completed') }}",
"decision": "={{ JSON.stringify($json.message.content) }}",
"additionalFields": {
"modelProvider": "openai",
"modelUsed": "gpt-4o",
"decisionType": "performance_review",
"riskLevel": "high",
"humanReview": true,
"policies": "hr-fairness-v1",
"permissions": "review.assist",
"tags": "hr, performance, ai-act"
}
},
"id": "37c98c5c-7cf2-4d26-9fdc-abdaba84fb8e",
"name": "Signatrust: Receipt",
"type": "n8n-nodes-signatrust.signatrust",
"typeVersion": 1,
"position": [
440,
300
],
"credentials": {
"signatrustApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"respondWith": "json",
"responseBody": "={{ { status:\"OK\", receipt_id:$json.id, decision:$('AI Decision').item.json.message.content } }}",
"options": {}
},
"id": "1df9e229-fed9-48b4-816b-090389aa5b8e",
"name": "Respond",
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.1,
"position": [
660,
300
]
},
{
"parameters": {
"content": "## Performance Review Assistant with Verifiable Decision Receipts\n**Why Signatrust?** Every AI decision here becomes a tamper-evident, Ed25519-signed receipt \u2014 verifiable for audits and disputes.",
"height": 170,
"width": 420,
"color": 5
},
"id": "39da5ea4-f957-41bc-92dd-dc50b247df0a",
"name": "Sticky Note 611b8f",
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
-40,
40
]
}
],
"connections": {
"Performance Review Assistant": {
"main": [
[
{
"node": "AI Decision",
"type": "main",
"index": 0
}
]
]
},
"AI Decision": {
"main": [
[
{
"node": "Signatrust: Receipt",
"type": "main",
"index": 0
}
]
]
},
"Signatrust: Receipt": {
"main": [
[
{
"node": "Respond",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"tags": [
{
"name": "Performance Review Assistant \u2014 hr"
},
{
"name": "Performance Review Assistant \u2014 performance"
},
{
"name": "Performance Review Assistant \u2014 ai-act"
},
{
"name": "Signatrust (15)"
}
],
"meta": {
"templateCredsSetupCompleted": false
},
"versionId": "e39d83fe-b6e5-441c-9796-e0ba25592db4"
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
openAiApisignatrustApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Performance Review Assistant with Verifiable Decision Receipts. Uses openAi, n8n-nodes-signatrust. Webhook trigger; 5 nodes.
Source: https://github.com/abokenan444/n8n-signatrust-workflows/blob/main/workflows/15-performance-review-assist.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
The Ultimate Scraper for n8n uses Selenium and AI to retrieve any information displayed on a webpage. You can also use session cookies to log in to the targeted webpage for more advanced scraping need
z-Api. Uses httpRequest, openAi, redis, postgres. Webhook trigger; 61 nodes.
How it works: • Receives WhatsApp messages via webhook from Whapi.Cloud • Routes commands: AI chat (/ai), numeric commands (1-9), or help menu • Sends responses: text, images, documents, videos, conta
This workflow will allow you to use OpenAI Assistant API together with a chatting platform. This version is configured to work with Hubspot, however, the Hubspot modules can be replaced by other platf