Zurück zu den Vorlagen
WORKFLOW-VORLAGE
Learn Supabase Storage Fundamental | Operasyon için n8n Otomasyon İş Akışı Şablonu (HTTP)
n8n için hazır otomasyon şablonu: Learn Supabase Storage Fundamental. 8 düğüm. Entegrasyonlar: HTTP. JSON'u kopyalayıp n8n'e içe aktarın.
8 KnotenLearn_Supabase_Storage_Fundamental-workflow.json
{"id": "EIOmLVu0xM1NA4BP","meta": {"instanceId": "70273a2379644db63ce659827cfd8abac2d0b189210eafa02dd5376e3a62cd1d"},"name": "Learn Supabase Storage Fundamental","tags": [],"nodes": [{"id": "dcc07b9f-788f-4ea5-9a45-37497ba7319c","name": "fetch_file_to_review1","type": "n8n-nodes-base.httpRequest","position": [-304,-416],"parameters": {"url": "=https://uptttiuxuaacxrdofqgm.supabase.co/storage/v1/object/test-n8n/{{ $json['File Name'] }}","options": {},"authentication": "predefinedCredentialType","nodeCredentialType": "supabaseApi"},"credentials": {"supabaseApi": {"id": "UMM6kngXouHxEYn4","name": "Supabase account"}},"typeVersion": 4.2},{"id": "1b5e12a0-3f2f-421e-ae03-9f31a40d6bd0","name": "upload_to_supabase_storage","type": "n8n-nodes-base.httpRequest","position": [-320,-784],"parameters": {"url": "=https://uptttiuxuaacxrdofqgm.supabase.co/storage/v1/object/test-n8n/{{ $binary.File.fileName }}","method": "POST","options": {},"sendBody": true,"contentType": "binaryData","authentication": "predefinedCredentialType","inputDataFieldName": "File","nodeCredentialType": "supabaseApi"},"credentials": {"supabaseApi": {"id": "UMM6kngXouHxEYn4","name": "Supabase account"}},"typeVersion": 4.2},{"id": "04a263f5-8de9-466f-bb52-ebf55ff75e37","name": "On form submission","type": "n8n-nodes-base.formTrigger","position": [-688,-784],"webhookId": "94a1537a-fe30-4308-88dc-cc03eff2e5a1","parameters": {"options": {"buttonLabel": "Upload to Supabase Storage"},"formTitle": "Supabase Storage File Upload","formFields": {"values": [{"fieldType": "file","fieldLabel": "File","multipleFiles": false}]}},"typeVersion": 2.2},{"id": "9a06dcd2-d1fc-466b-a3a8-1f30591e375f","name": "On form submission1","type": "n8n-nodes-base.formTrigger","position": [-720,-416],"webhookId": "1c390524-aec0-48e0-b196-5bb983aed13c","parameters": {"options": {},"formTitle": "Get File from Storage","formFields": {"values": [{"fieldLabel": "File Name"}]}},"typeVersion": 2.2},{"id": "72d6ca3b-81ff-43a7-843d-be4d3e542572","name": "On form submission2","type": "n8n-nodes-base.formTrigger","position": [-672,-64],"webhookId": "26953730-58b9-4bbc-8ff6-d0adcf20ba4a","parameters": {"options": {},"formTitle": "Get File from Storage","formFields": {"values": [{"fieldLabel": "File Name"}]}},"typeVersion": 2.2},{"id": "160ca4a4-7e79-493a-a0da-5c8d6b78ca07","name": "get_sign_file_for_temp_access","type": "n8n-nodes-base.httpRequest","position": [-240,-64],"parameters": {"url": "=https://uptttiuxuaacxrdofqgm.supabase.co/storage/v1/object/sign/test-n8n/{{ $json['File Name'] }}","method": "POST","options": {},"jsonBody": "{\n \"expiresIn\" : 3600\n}","sendBody": true,"specifyBody": "json","authentication": "predefinedCredentialType","nodeCredentialType": "supabaseApi"},"credentials": {"supabaseApi": {"id": "UMM6kngXouHxEYn4","name": "Supabase account"}},"typeVersion": 4.2},{"id": "23718644-32eb-4351-b32e-4071bbeb0492","name": "list_all_the_object","type": "n8n-nodes-base.httpRequest","position": [-240,336],"parameters": {"url": "=https://uptttiuxuaacxrdofqgm.supabase.co/storage/v1/object/list/test-n8n","method": "POST","options": {},"jsonBody": "{\n \"prefix\": \"\",\n \"limit\": 20,\n \"offset\": 0,\n \"sortBy\": {\n \"column\": \"name\",\n \"order\": \"asc\"\n }\n}","sendBody": true,"specifyBody": "json","authentication": "predefinedCredentialType","nodeCredentialType": "supabaseApi"},"credentials": {"supabaseApi": {"id": "UMM6kngXouHxEYn4","name": "Supabase account"}},"typeVersion": 4.2},{"id": "1fa36875-d26f-4bc4-b692-92e8ce0a1bc6","name": "When clicking ‘Execute workflow’","type": "n8n-nodes-base.manualTrigger","position": [-672,336],"parameters": {},"typeVersion": 1},{"id": "2e21cf08-8100-4059-88ac-d87a2d1ff0e3","name": "Sticky Note","type": "n8n-nodes-base.stickyNote","position": [-1536,-400],"parameters": {"width": 608,"height": 512,"content": "## Update/create policy to access that. (note based on key we have create policy)\n"},"typeVersion": 1},{"id": "269b106b-b758-4dd4-b75f-3374b7b3bf39","name": "Sticky Note2","type": "n8n-nodes-base.stickyNote","position": [-2080,-896],"parameters": {"width": 528,"height": 464,"content": "## Get project URL\n"},"typeVersion": 1},{"id": "c4051c9c-3145-4a2f-8645-e9ac21007b44","name": "Sticky Note3","type": "n8n-nodes-base.stickyNote","position": [-2080,144],"parameters": {"width": 528,"height": 464,"content": "## Create a Credential of Suparbase Api Credential Type.\n"},"typeVersion": 1},{"id": "7f774520-ee3c-4a83-b79e-330860cb39e6","name": "Sticky Note4","type": "n8n-nodes-base.stickyNote","position": [-1536,-896],"parameters": {"width": 592,"height": 480,"content": "## Get Api key (Anon) key. \n"},"typeVersion": 1},{"id": "d40c816f-e736-4213-8a82-c2b495e3dbc8","name": "Sticky Note5","type": "n8n-nodes-base.stickyNote","position": [-2080,-416],"parameters": {"width": 528,"height": 544,"content": "## Create a bucket in supabase\n"},"typeVersion": 1},{"id": "d67a1e56-5cd1-4054-8670-0a63a95abe03","name": "Sticky Note1","type": "n8n-nodes-base.stickyNote","position": [-912,-880],"parameters": {"color": 4,"width": 928,"height": 304,"content": "## Lesson 1 - Upload file to storage"},"typeVersion": 1},{"id": "986ba910-9a34-4256-a968-b65edccbdd7d","name": "Sticky Note6","type": "n8n-nodes-base.stickyNote","position": [-912,-512],"parameters": {"color": 4,"width": 928,"height": 288,"content": "## Lesson 2 - Fetch file from storage"},"typeVersion": 1},{"id": "066aaed6-6390-4ddb-ba8f-94f9ef84ee1c","name": "Sticky Note7","type": "n8n-nodes-base.stickyNote","position": [-912,-160],"parameters": {"color": 4,"width": 944,"height": 288,"content": "## Lesson 3 - Create Temp document with expire time"},"typeVersion": 1},{"id": "a1fdb67e-1ea3-4e82-8b98-9ab05b2a1a57","name": "Sticky Note8","type": "n8n-nodes-base.stickyNote","position": [-912,224],"parameters": {"color": 4,"width": 960,"height": 288,"content": "## Lesson 4 - Fetch list all the items in storage"},"typeVersion": 1},{"id": "ddf906e8-0e37-477e-9b5a-2ed1e9265058","name": "Sticky Note9","type": "n8n-nodes-base.stickyNote","position": [-2992,-896],"parameters": {"color": 3,"width": 896,"height": 1632,"content": "## Learn Supabase Storage Fundamentals with n8n\n\nThis template demonstrates how to integrate **Supabase Storage** with **n8n** for uploading, fetching, generating temporary signed URLs, and listing files. It’s a beginner-friendly workflow that helps you understand how to connect Supabase’s storage API with n8n automation.\n\n---\n\n## Who it’s for\n- Developers and teams new to **Supabase** who want a hands-on learning workflow. \n- Anyone looking to automate file uploads and retrieval from **Supabase Storage**. \n- Educators or technical teams teaching Supabase fundamentals with **practical demos**. \n\n---\n\n## How it works\n1. **Upload File** – A user uploads a file through an n8n form, which gets stored in a Supabase storage bucket. \n2. **Fetch File** – Retrieve files by providing their filename. \n3. **Temporary Access** – Generate **signed URLs** with custom expiry for secure file sharing. \n4. **List Objects** – View all stored files in the chosen Supabase bucket. \n\n---\n\n## How to set up\n- Create a **Supabase account** and set up a project. \n- Create a **bucket** in Supabase (e.g., `test-n8n`). \n- Get your **Project URL** and **Anon Key** from Supabase. \n- In n8n, create a **Supabase API Credential** using your keys. \n- Import this workflow and connect it with your credentials. \n- Run the forms to test file upload, retrieval, and listing. \n\n---\n\n## Requirements\n- A Supabase project with **storage enabled**. \n- A configured **Supabase API Credential** in n8n. \n\n---\n\n## Customization\n- Change the bucket name (`test-n8n`) to your own. \n- Adjust signed URL **expiry times** for temporary file access. \n- Replace Supabase with another S3-compatible storage if needed. \n- Extend the workflow with notifications (Slack, Email) after file upload. \n\n---\n\n## 📝 Lessons Included\n- **Lesson 1** – Upload file to Supabase storage. \n- **Lesson 2** – Fetch file from storage. \n- **Lesson 3** – Create a temporary signed document with expiry. \n- **Lesson 4** – List all items in Supabase storage. \n\n---\n\n## 🔑 Prerequisites\n- Supabase account + project. \n- Project URL and API Key (Anon). \n- Bucket created in Supabase. \n- Policy created to allow read/write access. \n- n8n with Supabase API credentials configured. \n\n---"},"typeVersion": 1}],"active": false,"pinData": {},"settings": {"executionOrder": "v1"},"versionId": "95dabc42-1c4b-4b25-86a6-09b72a439252","connections": {"On form submission": {"main": [[{"node": "upload_to_supabase_storage","type": "main","index": 0}]]},"On form submission1": {"main": [[{"node": "fetch_file_to_review1","type": "main","index": 0}]]},"On form submission2": {"main": [[{"node": "get_sign_file_for_temp_access","type": "main","index": 0}]]},"fetch_file_to_review1": {"main": [[]]},"When clicking ‘Execute workflow’": {"main": [[{"node": "list_all_the_object","type": "main","index": 0}]]}}}
Im n8n Editor: mit Strg+V einfügen→Workflow wird erstellt