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": "Document Upload",
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "upload",
"responseMode": "onReceived"
},
"id": "webhook-upload",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"typeVersion": 1,
"position": [
250,
300
]
},
{
"parameters": {
"method": "POST",
"url": "https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",
"authentication": "oAuth2",
"nodeCredentialType": "googleDriveOAuth2Api",
"bodyParametersJson": "={\n \"name\": \"{{ $node[\\\"Webhook\\\"].json.filename }}\",\n \"mimeType\": \"{{ $node[\\\"Webhook\\\"].json.mimeType }}\",\n \"parents\": [\"{{ $env.GOOGLE_DRIVE_FOLDER_ID }}\"]\n}",
"sendBody": true,
"bodyContentType": "form-urlencoded"
},
"id": "google-drive-upload",
"name": "Upload to Google Drive",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4,
"position": [
450,
300
]
},
{
"parameters": {
"method": "POST",
"url": "={{ $env.SUPABASE_DB_URL }}/rest/v1/documents",
"authentication": "genericCredentialType",
"genericCredentialType": "httpHeaderAuth",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer {{ $env.SUPABASE_SERVICE_ROLE_KEY }}"
},
{
"name": "Content-Type",
"value": "application/json"
}
]
},
"bodyParametersJson": "={\n \"filename\": \"{{ $node[\\\"Webhook\\\"].json.filename }}\",\n \"file_type\": \"{{ $node[\\\"Webhook\\\"].json.mimeType }}\",\n \"google_drive_id\": \"{{ $node[\\\"Upload to Google Drive\\\"].json.id }}\",\n \"status\": \"uploaded\"\n}"
},
"id": "supabase-save-doc",
"name": "Save Document Metadata",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4,
"position": [
650,
300
]
}
],
"connections": {
"Webhook": {
"main": [
[
{
"node": "Upload to Google Drive",
"type": "main",
"index": 0
}
]
]
},
"Upload to Google Drive": {
"main": [
[
{
"node": "Save Document Metadata",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Document Upload. Uses httpRequest. Webhook trigger; 3 nodes.
Source: https://github.com/Busraaozkan1/n8n-project/blob/568cf19ed9a57e6b5b4444c3e62d9b9a781e6930/n8n-workflows/document-upload.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.
User Onboarding Workflow. Uses httpRequest, emailSend. Webhook trigger; 7 nodes.
Excalibur — Fluxo Completo. Uses httpRequest. Webhook trigger; 7 nodes.
WF-05: Trade Alert (Webhook from Strategy Engine). Uses httpRequest. Webhook trigger; 7 nodes.
This workflow triggers when a new opportunity is created in Go High Level (GHL), fetches the associated contact details, and initiates an outbound call using Vapi. The call is made by a Vapi assistant