Skip to content

Instantly share code, notes, and snippets.

@alnutile
Created September 18, 2025 12:20
Show Gist options
  • Save alnutile/207b8344d3d428b62edf567fda26c339 to your computer and use it in GitHub Desktop.
Save alnutile/207b8344d3d428b62edf567fda26c339 to your computer and use it in GitHub Desktop.
See the video here on N8N and Files https://youtu.be/qwm59V1SA_Q
{
"nodes": [
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
16,
-80
],
"id": "b8040209-3d4b-4763-a88f-952ec960a6e1",
"name": "Extract from File"
},
{
"parameters": {
"operation": "pdf",
"binaryPropertyName": "file",
"options": {}
},
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
16,
608
],
"id": "356e6742-740a-4622-8e6c-7fc421aec750",
"name": "PDF"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "{\n \"files\": \"success\"\n}",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
240,
64
],
"id": "7759516d-748c-426e-8d2f-71f70e0db594",
"name": "Respond to Webhook"
},
{
"parameters": {
"name": "example.csv",
"driveId": {
"__rl": true,
"value": "My Drive",
"mode": "list",
"cachedResultName": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive"
},
"folderId": {
"__rl": true,
"value": "1q12jZ6lyn59FAtlsZ82PQslNZwoLTuwe",
"mode": "list",
"cachedResultName": "YouTubeDemos",
"cachedResultUrl": "https://drive.google.com/drive/folders/1q12jZ6lyn59FAtlsZ82PQslNZwoLTuwe"
},
"options": {}
},
"type": "n8n-nodes-base.googleDrive",
"typeVersion": 3,
"position": [
16,
160
],
"id": "77fcdf14-6c2c-41f7-896a-968ce22afeb0",
"name": "Upload file",
"credentials": {
"googleDriveOAuth2Api": {
"id": "wo4SIIYwu7n9YaOx",
"name": "Google Drive account"
}
}
},
{
"parameters": {
"httpMethod": "POST",
"path": "3ec6ab9e-7c7d-4ea3-9a0e-8bcf71b4ef9b",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-208,
64
],
"id": "ba9cf1ef-30c2-4c52-bb60-f39fa4f2c27e",
"name": "CSV",
"webhookId": "3ec6ab9e-7c7d-4ea3-9a0e-8bcf71b4ef9b"
},
{
"parameters": {
"httpMethod": "POST",
"path": "html-to-markdown",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-208,
384
],
"id": "6de66f94-c519-4aa5-93a5-fd9738f22047",
"name": "HTML1",
"webhookId": "93f8cccd-1c6d-4a3a-9bf3-3eb1b897ffb6"
},
{
"parameters": {
"html": "={{ $json.data }}",
"options": {}
},
"type": "n8n-nodes-base.markdown",
"typeVersion": 1,
"position": [
240,
384
],
"id": "28f2188b-c908-4227-8a7d-3ce43b88bc43",
"name": "Markdown"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "={\n \"markwown\": {{ $json.data.toJsonString() }}\n} ",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
464,
384
],
"id": "7e608cbd-5740-4c45-bccc-7037febfc989",
"name": "Respond to Webhook1"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "={\n \"files\": {{ $json.text.toJsonString() }}\n} ",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
240,
608
],
"id": "9ca795ee-77ec-4014-bf29-1d43101eb97e",
"name": "Respond to Webhook2"
},
{
"parameters": {
"operation": "text",
"binaryPropertyName": "file",
"options": {}
},
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
16,
384
],
"id": "d27210bb-3d4a-4ea8-b6bf-99235aa17694",
"name": "Extract from File1"
},
{
"parameters": {
"content": "I want the raw html not the HTML converted to object which the HTML Extract does ",
"width": 272
},
"type": "n8n-nodes-base.stickyNote",
"position": [
-544,
368
],
"typeVersion": 1,
"id": "714258bf-4041-4bc6-9dde-9a390b293444",
"name": "Sticky Note"
},
{
"parameters": {
"httpMethod": "POST",
"path": "pdf-to-text",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-208,
608
],
"id": "475e38f6-f35d-4b95-95c3-8bfb2c0f6548",
"name": "PDF to Text",
"webhookId": "93f8cccd-1c6d-4a3a-9bf3-3eb1b897ffb6"
},
{
"parameters": {
"operation": "pdf",
"binaryPropertyName": "file",
"options": {}
},
"type": "n8n-nodes-base.extractFromFile",
"typeVersion": 1,
"position": [
16,
832
],
"id": "391c8eb6-eac6-4d87-b3f5-f78c8dbf0683",
"name": "PDF1"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "={\n \"results\": {{ $json.message.content.toJsonString() }}\n} ",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
592,
832
],
"id": "400569b5-568f-48dc-9f12-45e103d11674",
"name": "Respond to Webhook4"
},
{
"parameters": {
"httpMethod": "POST",
"path": "pdf-to-structure",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-208,
832
],
"id": "7db30666-7477-4036-9fd6-ab90251285be",
"name": "PDF to Structured",
"webhookId": "93f8cccd-1c6d-4a3a-9bf3-3eb1b897ffb6"
},
{
"parameters": {
"modelId": {
"__rl": true,
"value": "gpt-4.1",
"mode": "list",
"cachedResultName": "GPT-4.1"
},
"messages": {
"values": [
{
"content": "={{ $json.text }}"
},
{
"content": "# AI Extraction Reference - What Can Be Extracted\n\nThis document shows the structured data that AI can extract from the unstructured PDF text.\n\n## Employee Data\n```json\n{\n \"employees\": [\n {\n \"name\": \"Sarah Johnson\",\n \"employee_id\": \"CS-2847\",\n \"role\": \"Lead Customer Service Representative\",\n \"tickets_processed\": 342,\n \"avg_resolution_time_hours\": 2.3,\n \"satisfaction_score\": 94.7\n },\n {\n \"name\": \"Michael Chen\",\n \"employee_id\": \"CS-1923\",\n \"tickets_processed\": 298,\n \"avg_resolution_time_hours\": 1.8,\n \"satisfaction_score\": 96.2\n },\n {\n \"name\": \"Lisa Rodriguez\",\n \"employee_id\": \"CS-3156\",\n \"role\": \"New Team Member\",\n \"training_completion\": \"2024-12-15\",\n \"tickets_processed\": 89,\n \"avg_resolution_time_hours\": 2.1,\n \"satisfaction_score\": 92.8\n }\n ]\n}\n```\n\n## Performance Metrics\n```json\n{\n \"performance_metrics\": {\n \"response_time_improvement\": \"23%\",\n \"net_promoter_score\": {\n \"previous\": 67,\n \"current\": 74\n },\n \"first_call_resolution\": {\n \"previous\": \"71%\",\n \"current\": \"78%\"\n },\n \"customer_retention_rate\": \"89.3%\",\n \"target_retention_rate\": \"92%\"\n }\n}\n```\n\n## Financial Data\n```json\n{\n \"financial_data\": {\n \"total_revenue_impact\": 847320,\n \"cost_savings\": 156780,\n \"premium_support_price\": 29.99,\n \"premium_support_growth\": \"15%\",\n \"q1_2025_budget\": 234500,\n \"overtime_rate\": 28.50\n }\n}\n```\n\n## Operational Data\n```json\n{\n \"operational_data\": {\n \"total_hours_worked\": 2847,\n \"overtime_hours\": 312,\n \"busiest_day\": {\n \"date\": \"2024-12-03\",\n \"tickets\": 127\n },\n \"quietest_day\": {\n \"date\": \"2024-11-28\",\n \"tickets\": 34\n },\n \"ticket_categories\": {\n \"billing_inquiries\": \"45%\",\n \"technical_support\": \"32%\",\n \"account_management\": \"23%\"\n }\n }\n}\n```\n\n## Future Plans\n```json\n{\n \"future_plans\": {\n \"new_hires\": 3,\n \"ai_chatbot_ticket_reduction\": \"25-30%\",\n \"target_period\": \"Q1 2025\"\n }\n}\n```",
"role": "system"
}
]
},
"jsonOutput": true,
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 1.8,
"position": [
240,
832
],
"id": "257c8f84-faf4-48ec-8355-d3855282a6ec",
"name": "Message a model",
"credentials": {
"openAiApi": {
"id": "I7RAbk2vtoz2FIGj",
"name": "OpenAi account"
}
}
},
{
"parameters": {
"httpMethod": "POST",
"path": "audio-to-text",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-208,
1056
],
"id": "426411ca-15be-4ff8-a002-9d14519dacb4",
"name": "Audio to Text",
"webhookId": "93f8cccd-1c6d-4a3a-9bf3-3eb1b897ffb6"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "={\n \"results\": {{ $json.text.toJsonString() }}\n} ",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
240,
1056
],
"id": "de18037e-f110-45ab-9c8a-b4e1c3a3dab2",
"name": "Respond to Webhook5"
},
{
"parameters": {
"resource": "audio",
"operation": "transcribe",
"binaryPropertyName": "file",
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.openAi",
"typeVersion": 1.8,
"position": [
16,
1056
],
"id": "172e585d-b8b4-46c0-97ec-47452ccfec0a",
"name": "Transcribe a recording",
"credentials": {
"openAiApi": {
"id": "I7RAbk2vtoz2FIGj",
"name": "OpenAi account"
}
}
}
],
"connections": {
"Extract from File": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"PDF": {
"main": [
[
{
"node": "Respond to Webhook2",
"type": "main",
"index": 0
}
]
]
},
"Upload file": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"CSV": {
"main": [
[
{
"node": "Upload file",
"type": "main",
"index": 0
},
{
"node": "Extract from File",
"type": "main",
"index": 0
}
]
]
},
"HTML1": {
"main": [
[
{
"node": "Extract from File1",
"type": "main",
"index": 0
}
]
]
},
"Markdown": {
"main": [
[
{
"node": "Respond to Webhook1",
"type": "main",
"index": 0
}
]
]
},
"Extract from File1": {
"main": [
[
{
"node": "Markdown",
"type": "main",
"index": 0
}
]
]
},
"PDF to Text": {
"main": [
[
{
"node": "PDF",
"type": "main",
"index": 0
}
]
]
},
"PDF1": {
"main": [
[
{
"node": "Message a model",
"type": "main",
"index": 0
}
]
]
},
"PDF to Structured": {
"main": [
[
{
"node": "PDF1",
"type": "main",
"index": 0
}
]
]
},
"Message a model": {
"main": [
[
{
"node": "Respond to Webhook4",
"type": "main",
"index": 0
}
]
]
},
"Audio to Text": {
"main": [
[
{
"node": "Transcribe a recording",
"type": "main",
"index": 0
}
]
]
},
"Transcribe a recording": {
"main": [
[
{
"node": "Respond to Webhook5",
"type": "main",
"index": 0
}
]
]
}
},
"pinData": {
"HTML1": [
{
"headers": {
"host": "n8n-next.apps.thedailyaistudio.com",
"user-agent": "PostmanRuntime/7.46.1",
"content-length": "6211",
"accept": "*/*",
"accept-encoding": "gzip, deflate, br",
"content-type": "multipart/form-data; boundary=--------------------------291743538714132446485489",
"postman-token": "6793c4d7-febc-4053-8a8d-39606c38e322",
"x-forwarded-for": "50.170.3.94",
"x-forwarded-host": "n8n-next.apps.thedailyaistudio.com",
"x-forwarded-port": "443",
"x-forwarded-proto": "https",
"x-forwarded-server": "536677c81f48",
"x-real-ip": "50.170.3.94"
},
"params": {},
"query": {},
"body": {},
"webhookUrl": "https://n8n-next.apps.thedailyaistudio.com/webhook/html-to-markdown",
"executionMode": "production"
}
],
"PDF to Text": [
{
"headers": {
"host": "n8n-next.apps.thedailyaistudio.com",
"user-agent": "PostmanRuntime/7.46.1",
"content-length": "310960",
"accept": "*/*",
"accept-encoding": "gzip, deflate, br",
"content-type": "multipart/form-data; boundary=--------------------------343820173369219893056972",
"postman-token": "aaee6aa8-e518-4183-8403-247da8242816",
"x-forwarded-for": "50.170.3.94",
"x-forwarded-host": "n8n-next.apps.thedailyaistudio.com",
"x-forwarded-port": "443",
"x-forwarded-proto": "https",
"x-forwarded-server": "536677c81f48",
"x-real-ip": "50.170.3.94"
},
"params": {},
"query": {},
"body": {},
"webhookUrl": "https://n8n-next.apps.thedailyaistudio.com/webhook/pdf-to-text",
"executionMode": "production"
}
],
"PDF to Structured": [
{
"headers": {
"host": "n8n-next.apps.thedailyaistudio.com",
"user-agent": "PostmanRuntime/7.46.1",
"content-length": "283640",
"accept": "*/*",
"accept-encoding": "gzip, deflate, br",
"content-type": "multipart/form-data; boundary=--------------------------949082875751043119770399",
"postman-token": "190463a5-4b3c-4363-b48e-6994bc6584a1",
"x-forwarded-for": "50.170.3.94",
"x-forwarded-host": "n8n-next.apps.thedailyaistudio.com",
"x-forwarded-port": "443",
"x-forwarded-proto": "https",
"x-forwarded-server": "536677c81f48",
"x-real-ip": "50.170.3.94"
},
"params": {},
"query": {},
"body": {},
"webhookUrl": "https://n8n-next.apps.thedailyaistudio.com/webhook/pdf-to-structure",
"executionMode": "production"
}
],
"Audio to Text": [
{
"headers": {
"host": "n8n-next.apps.thedailyaistudio.com",
"user-agent": "PostmanRuntime/7.46.1",
"content-length": "70119",
"accept": "*/*",
"accept-encoding": "gzip, deflate, br",
"content-type": "multipart/form-data; boundary=--------------------------670356871873625826431554",
"postman-token": "5dd0a617-d9d5-4209-9c97-d48c9b2e49b8",
"x-forwarded-for": "50.170.3.94",
"x-forwarded-host": "n8n-next.apps.thedailyaistudio.com",
"x-forwarded-port": "443",
"x-forwarded-proto": "https",
"x-forwarded-server": "536677c81f48",
"x-real-ip": "50.170.3.94"
},
"params": {},
"query": {},
"body": {},
"webhookUrl": "https://n8n-next.apps.thedailyaistudio.com/webhook/audio-to-text",
"executionMode": "production"
}
]
},
"meta": {
"templateCredsSetupCompleted": true,
"instanceId": "9ba32224070d4dc8fcb21b0beaef541f293bee284936bfc4b558be62fb1d5880"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment