This workflow follows the Chainretrievalqa → Retrievervectorstore recipe pattern — see all workflows that pair these two integrations.
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": "llamaparse_doc",
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
-220,
-60
],
"id": "9ddc532e-aa6e-4221-b13f-a8639b611f5f",
"name": "When clicking \u2018Test workflow\u2019"
},
{
"parameters": {
"amount": 2,
"unit": "minutes"
},
"type": "n8n-nodes-base.wait",
"typeVersion": 1.1,
"position": [
340,
-60
],
"id": "a823fbd2-e551-44b8-86cd-27c3e2470419",
"name": "Wait"
},
{
"parameters": {
"method": "POST",
"url": "https://api.cloud.llamaindex.ai/api/v1/parsing/upload",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "accept",
"value": "application/json"
},
{
"name": "Authorization",
"value": "<redacted-credential>"
}
]
},
"sendBody": true,
"contentType": "multipart-form-data",
"bodyParameters": {
"parameters": [
{
"parameterType": "formBinaryData",
"name": "file",
"inputDataFieldName": "data"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
160,
-60
],
"id": "59b8e9bf-3d58-4e30-aaaa-ffa9b7b85300",
"name": "creamos el trabajo",
"retryOnFail": true
},
{
"parameters": {
"url": "=https://api.cloud.llamaindex.ai/api/v1/parsing/job/{{ $json.id }}",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "accept",
"value": "application/json"
},
{
"name": "Authorization",
"value": "<redacted-credential>"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
500,
-60
],
"id": "0872a034-f855-4774-b70e-111df442fbc4",
"name": "obtenemos el status",
"retryOnFail": true
},
{
"parameters": {
"url": "=https://api.cloud.llamaindex.ai/api/v1/parsing/job/{{ $json.id }}/result/markdown ",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "accept",
"value": "application/json"
},
{
"name": "Authorization",
"value": "<redacted-credential>"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
680,
-60
],
"id": "247d48ba-da5a-46f8-b905-a236364dc742",
"name": "Recibimos el documento",
"retryOnFail": true
},
{
"parameters": {
"fileSelector": "/data/shared/100m-offers-alex-hormozi-espaol.pdf",
"options": {}
},
"type": "n8n-nodes-base.readWriteFile",
"typeVersion": 1,
"position": [
-40,
-60
],
"id": "9c990fef-dd1c-42bb-9c49-c10245521c4e",
"name": "Read/Write Files from Disk"
},
{
"parameters": {
"mode": "insert",
"qdrantCollection": {
"__rl": true,
"mode": "id",
"value": "100m"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
"typeVersion": 1.1,
"position": [
1080,
-60
],
"id": "877fc7c9-fc05-4e3c-b689-3da6fdc31725",
"name": "Qdrant Vector Store",
"credentials": {
"qdrantApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"typeVersion": 1.2,
"position": [
980,
200
],
"id": "4ab2e9ad-f75b-439a-801d-bb826ba5af2a",
"name": "Embeddings OpenAI",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"typeVersion": 1,
"position": [
1220,
160
],
"id": "4d7a71f5-f661-47e6-ba35-8f06ea4f73e8",
"name": "Default Data Loader"
},
{
"parameters": {
"chunkSize": 600,
"chunkOverlap": 40,
"options": {
"splitCode": "markdown"
}
},
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"typeVersion": 1,
"position": [
1320,
380
],
"id": "21619d55-c857-4156-ae7d-9f3d4bcc0c2d",
"name": "Recursive Character Text Splitter"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"typeVersion": 1.1,
"position": [
-240,
200
],
"id": "a8a38f77-e283-41c2-b326-95594fd52994",
"name": "When chat message received"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.chainRetrievalQa",
"typeVersion": 1.5,
"position": [
-20,
200
],
"id": "aee7e48f-b46e-4c91-acdc-586924ab8f24",
"name": "Question and Answer Chain"
},
{
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4.1-nano",
"mode": "list",
"cachedResultName": "gpt-4.1-nano"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
-100,
460
],
"id": "7078ce3d-2133-402f-9b1f-19d95b7156cb",
"name": "OpenAI Chat Model",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {},
"type": "@n8n/n8n-nodes-langchain.retrieverVectorStore",
"typeVersion": 1,
"position": [
140,
460
],
"id": "99bfcffe-d4a6-408f-92cf-21be78a5c539",
"name": "Vector Store Retriever"
},
{
"parameters": {
"qdrantCollection": {
"__rl": true,
"value": "100m",
"mode": "list",
"cachedResultName": "100m"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
"typeVersion": 1.1,
"position": [
160,
620
],
"id": "7acbc7d8-9347-4542-a809-7322ef4606a6",
"name": "Qdrant Vector Store1",
"credentials": {
"qdrantApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"typeVersion": 1.2,
"position": [
260,
840
],
"id": "e12d4e06-53f5-46b6-a743-28e83a85891e",
"name": "Embeddings OpenAI1",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "c0919d83-f187-44dc-b834-1dbaaeda3aff",
"name": "markdown",
"value": "={{ $json.markdown }}",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
900,
-60
],
"id": "7f57a880-62d2-4e14-ab72-72a03135e6ed",
"name": "Edit Fields"
}
],
"connections": {
"Wait": {
"main": [
[
{
"node": "obtenemos el status",
"type": "main",
"index": 0
}
]
]
},
"When clicking \u2018Test workflow\u2019": {
"main": [
[
{
"node": "Read/Write Files from Disk",
"type": "main",
"index": 0
}
]
]
},
"creamos el trabajo": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"obtenemos el status": {
"main": [
[
{
"node": "Recibimos el documento",
"type": "main",
"index": 0
}
]
]
},
"Read/Write Files from Disk": {
"main": [
[
{
"node": "creamos el trabajo",
"type": "main",
"index": 0
}
]
]
},
"Recibimos el documento": {
"main": [
[
{
"node": "Edit Fields",
"type": "main",
"index": 0
}
]
]
},
"Embeddings OpenAI": {
"ai_embedding": [
[
{
"node": "Qdrant Vector Store",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Default Data Loader": {
"ai_document": [
[
{
"node": "Qdrant Vector Store",
"type": "ai_document",
"index": 0
}
]
]
},
"Recursive Character Text Splitter": {
"ai_textSplitter": [
[
{
"node": "Default Data Loader",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"When chat message received": {
"main": [
[
{
"node": "Question and Answer Chain",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Question and Answer Chain",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Vector Store Retriever": {
"ai_retriever": [
[
{
"node": "Question and Answer Chain",
"type": "ai_retriever",
"index": 0
}
]
]
},
"Qdrant Vector Store1": {
"ai_vectorStore": [
[
{
"node": "Vector Store Retriever",
"type": "ai_vectorStore",
"index": 0
}
]
]
},
"Embeddings OpenAI1": {
"ai_embedding": [
[
{
"node": "Qdrant Vector Store1",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Edit Fields": {
"main": [
[
{
"node": "Qdrant Vector Store",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "8279c9ec-3545-44ce-8421-9c6395104610",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "umIp9ZTwx8KgSkC8",
"tags": [
{
"createdAt": "2025-03-14T13:58:52.826Z",
"updatedAt": "2025-03-14T13:58:52.826Z",
"id": "zXAZ0a7SMXBcTfPx",
"name": "youtube-tvdst"
}
]
}
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.
openAiApiqdrantApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
llamaparse_doc. Uses httpRequest, readWriteFile, vectorStoreQdrant, embeddingsOpenAi. Event-driven trigger; 17 nodes.
Source: https://github.com/abratangana/repo_canal/blob/main/n8n_flows/procesamiento_documentos/llamaparse_doc.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.
Alfred (funcional). Uses gmailTool, googleCalendarTool, gmail, embeddingsOpenAi. Event-driven trigger; 83 nodes.
This comprehensive workflow bundle is designed as a powerful starter kit, enabling you to build a multi-functional AI assistant on Telegram. It seamlessly integrates AI-powered voice interactions, an
Agent IA Projet Client. Uses executeWorkflowTrigger, lmChatOpenAi, toolWorkflow, vectorStoreQdrant. Event-driven trigger; 79 nodes.
Chat with docs - 5minAI New version. Uses httpRequest, documentDefaultDataLoader, textSplitterRecursiveCharacterTextSplitter, embeddingsOpenAi. Event-driven trigger; 62 nodes.
I prepared a detailed guide that illustrates the entire process of building an AI agent using Supabase and Google Drive within N8N workflows.