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": "Upload to Supabase Demo",
"nodes": [
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "e556566e-20a1-48b4-b01e-197a402b5a5f",
"name": "file_id",
"value": "={{ $json.id }}",
"type": "string"
}
]
},
"options": {}
},
"id": "d373cb7c-674d-40a7-b568-704a3c6bae72",
"name": "Set ID",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
580,
40
]
},
{
"parameters": {
"operation": "text",
"options": {}
},
"id": "00fa6495-0bf9-49d3-be48-e2c5260cbf7f",
"name": "Extract from File",
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
1040,
40
]
},
{
"parameters": {
"mode": "insert",
"tableName": {
"__rl": true,
"value": "documents",
"mode": "list",
"cachedResultName": "documents"
},
"options": {
"queryName": "match_documents"
}
},
"id": "bd7aa898-2b52-45ea-93da-b89435d55f2b",
"name": "Supabase Vector Store",
"type": "@n8n/n8n-nodes-langchain.vectorStoreSupabase",
"typeVersion": 1,
"position": [
1220,
40
],
"credentials": {
"supabaseApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {
"metadata": {
"metadataValues": [
{
"name": "file_id",
"value": "={{ $('Set ID').item.json.file_id }}"
}
]
}
}
},
"id": "38dccf7c-94f9-4bfc-a498-306a899cc88f",
"name": "Default Data Loader",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"typeVersion": 1,
"position": [
1280,
200
]
},
{
"parameters": {
"options": {}
},
"id": "6cee0cfe-2db8-45c9-a330-4d01c7d4acfb",
"name": "Recursive Character Text Splitter",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"typeVersion": 1,
"position": [
1540,
200
]
},
{
"parameters": {
"options": {}
},
"id": "227fb03b-60d6-4d74-9022-127bd19bef20",
"name": "Embeddings OpenAI",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"typeVersion": 1.1,
"position": [
1160,
200
],
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"value": "1TdnGrO0UFHboSBFMYCT1T0w17OwMct6E",
"mode": "list",
"cachedResultName": "Projects",
"cachedResultUrl": "https://drive.google.com/drive/folders/1TdnGrO0UFHboSBFMYCT1T0w17OwMct6E"
},
"event": "fileUpdated",
"options": {}
},
"id": "3f7c7cf1-e314-4b75-a16f-fb549ef1950d",
"name": "File Updated",
"type": "n8n-nodes-base.googleDriveTrigger",
"typeVersion": 1,
"position": [
340,
380
],
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"value": "1TdnGrO0UFHboSBFMYCT1T0w17OwMct6E",
"mode": "list",
"cachedResultName": "Projects",
"cachedResultUrl": "https://drive.google.com/drive/folders/1TdnGrO0UFHboSBFMYCT1T0w17OwMct6E"
},
"event": "fileCreated",
"options": {}
},
"id": "5fbf67ec-43f4-4da9-9780-c616a93f5727",
"name": "New File",
"type": "n8n-nodes-base.googleDriveTrigger",
"typeVersion": 1,
"position": [
360,
40
],
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "download",
"fileId": {
"__rl": true,
"value": "={{ $json.file_id }}",
"mode": "id"
},
"options": {
"googleFileConversion": {
"conversion": {
"docsToFormat": "text/plain"
}
}
}
},
"id": "c7d30bf8-c068-4ad2-9473-28ff3fd04a25",
"name": "Downloading File",
"type": "n8n-nodes-base.googleDrive",
"typeVersion": 3,
"position": [
800,
40
],
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "download",
"fileId": {
"__rl": true,
"value": "={{ $('Set ID 2').item.json.file_id }}",
"mode": "id"
},
"options": {
"googleFileConversion": {
"conversion": {
"docsToFormat": "text/plain"
}
}
}
},
"id": "89f6919a-9fd3-4f42-ba1e-c8a615468f17",
"name": "Download File 2",
"type": "n8n-nodes-base.googleDrive",
"typeVersion": 3,
"position": [
940,
380
],
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"operation": "text",
"options": {}
},
"id": "139fd870-2f0c-4b84-86e2-67516d3c62e7",
"name": "Extract from File1",
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
1120,
380
]
},
{
"parameters": {
"mode": "insert",
"tableName": {
"__rl": true,
"value": "documents",
"mode": "list",
"cachedResultName": "documents"
},
"options": {
"queryName": "match_documents"
}
},
"id": "c375378a-77e9-468e-ba05-a54473899ebe",
"name": "Supabase Vector Store1",
"type": "@n8n/n8n-nodes-langchain.vectorStoreSupabase",
"typeVersion": 1,
"position": [
1320,
380
],
"credentials": {
"supabaseApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {
"metadata": {
"metadataValues": [
{
"name": "file_id",
"value": "={{ $('Keep First ID').item.json.file_id }}"
}
]
}
}
},
"id": "3767acd4-c43f-4b65-b7d5-c22269f03734",
"name": "Default Data Loader1",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"typeVersion": 1,
"position": [
1380,
560
]
},
{
"parameters": {
"options": {}
},
"id": "2c442939-68c5-4a6b-bf62-09ba7d49d96d",
"name": "Recursive Character Text Splitter1",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"typeVersion": 1,
"position": [
1640,
560
]
},
{
"parameters": {
"options": {}
},
"id": "3cae704e-f043-4b0f-8427-82d11447a5e5",
"name": "Embeddings OpenAI1",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"typeVersion": 1.1,
"position": [
1280,
560
],
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "b4433ac7-0b70-4405-a564-f3f78f784470",
"name": "file_id",
"value": "={{ $('File Updated').item.json.id }}",
"type": "string"
}
]
},
"options": {}
},
"id": "8d932805-480f-4954-a9e4-6d3d23792b7e",
"name": "Set ID 2",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
620,
380
]
},
{
"parameters": {
"operation": "delete",
"tableId": "documents",
"filterType": "string",
"filterString": "=metadata->>file_id=like.*{{ $json.id }}*"
},
"id": "0ec02f0f-04ab-47bf-b4bf-56f4077f82a7",
"name": "Delete Row(s)",
"type": "n8n-nodes-base.supabase",
"typeVersion": 1,
"position": [
480,
380
],
"credentials": {
"supabaseApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {},
"id": "3d3b219a-36ed-4d70-b0ff-697fb22f6f85",
"name": "Keep First ID",
"type": "n8n-nodes-base.limit",
"typeVersion": 1,
"position": [
760,
380
]
}
],
"connections": {
"Set ID": {
"main": [
[
{
"node": "Downloading File",
"type": "main",
"index": 0
}
]
]
},
"Extract from File": {
"main": [
[
{
"node": "Supabase Vector Store",
"type": "main",
"index": 0
}
]
]
},
"Default Data Loader": {
"ai_document": [
[
{
"node": "Supabase Vector Store",
"type": "ai_document",
"index": 0
}
]
]
},
"Recursive Character Text Splitter": {
"ai_textSplitter": [
[
{
"node": "Default Data Loader",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"Embeddings OpenAI": {
"ai_embedding": [
[
{
"node": "Supabase Vector Store",
"type": "ai_embedding",
"index": 0
}
]
]
},
"New File": {
"main": [
[
{
"node": "Set ID",
"type": "main",
"index": 0
}
]
]
},
"Downloading File": {
"main": [
[
{
"node": "Extract from File",
"type": "main",
"index": 0
}
]
]
},
"File Updated": {
"main": [
[
{
"node": "Delete Row(s)",
"type": "main",
"index": 0
}
]
]
},
"Download File 2": {
"main": [
[
{
"node": "Extract from File1",
"type": "main",
"index": 0
}
]
]
},
"Default Data Loader1": {
"ai_document": [
[
{
"node": "Supabase Vector Store1",
"type": "ai_document",
"index": 0
}
]
]
},
"Recursive Character Text Splitter1": {
"ai_textSplitter": [
[
{
"node": "Default Data Loader1",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"Embeddings OpenAI1": {
"ai_embedding": [
[
{
"node": "Supabase Vector Store1",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Extract from File1": {
"main": [
[
{
"node": "Supabase Vector Store1",
"type": "main",
"index": 0
}
]
]
},
"Set ID 2": {
"main": [
[
{
"node": "Keep First ID",
"type": "main",
"index": 0
}
]
]
},
"Delete Row(s)": {
"main": [
[
{
"node": "Set ID 2",
"type": "main",
"index": 0
}
]
]
},
"Keep First ID": {
"main": [
[
{
"node": "Download File 2",
"type": "main",
"index": 0
}
]
]
}
},
"active": true,
"settings": {
"executionOrder": "v1"
},
"versionId": "2bd439c9-af44-4ef0-9e28-75253fbf7eb1",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "mttKE7wdH4dGdq5s",
"tags": []
}
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.
googleDriveOAuth2ApiopenAiApisupabaseApi
About this workflow
Upload to Supabase Demo. Uses extractFromFile, vectorStoreSupabase, documentDefaultDataLoader, textSplitterRecursiveCharacterTextSplitter. Event-driven trigger; 18 nodes.
Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →