AutomationFlowsWeb Scraping › Automate Photo Background Removal with Photoroom API and Google Drive

Automate Photo Background Removal with Photoroom API and Google Drive

Original n8n title: 📸 Automate Photo Background Removal with Photoroom API and Google Drive

BySamir Saci @samirsaci on n8n.io

Tags: Marketing, Image Processing, Automation

Cron / scheduled trigger★★★★☆ complexity12 nodesGoogle DriveHTTP Request
Web Scraping Trigger: Cron / scheduled Nodes: 12 Complexity: ★★★★☆ Added:

This workflow corresponds to n8n.io template #4398 — we link there as the canonical source.

This workflow follows the Google Drive → HTTP Request 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 →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "b2441a46-bd10-4c0c-a804-3be138d2fd8e",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -460,
        220
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "c98d1021-81f1-43e9-8001-8708a16c5fdc",
      "name": "Loop Over Items1",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -440,
        860
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "d6b4b139-1751-4e53-8bd3-e86d0b427301",
      "name": "Move to Original",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        260,
        880
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "",
          "cachedResultName": "Original"
        },
        "operation": "move"
      },
      "typeVersion": 3
    },
    {
      "id": "0be7ea89-f48b-4844-ad2a-29b7e23e0fd2",
      "name": "Save to Remove Background",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        220,
        300
      ],
      "parameters": {
        "name": "={{ $json.name }}",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "",
          "cachedResultName": "Remove Background"
        },
        "inputDataFieldName": "result-sandbox-mode.png"
      },
      "notesInFlow": true,
      "typeVersion": 3
    },
    {
      "id": "73369386-e3c9-452d-a89f-6bf66072d002",
      "name": "Download Image",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -220,
        300
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {},
        "operation": "download"
      },
      "notesInFlow": true,
      "typeVersion": 3
    },
    {
      "id": "b127c813-9ae3-48d2-85da-36d2db1c6e63",
      "name": "Get all files",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -800,
        220
      ],
      "parameters": {
        "filter": {
          "folderId": {
            "__rl": true,
            "mode": "list",
            "value": "1j1wl00y4RAsRRecU74XxR6SpncYxMqdA",
            "cachedResultUrl": "",
            "cachedResultName": ""
          },
          "whatToSearch": "files"
        },
        "options": {},
        "resource": "fileFolder"
      },
      "typeVersion": 3
    },
    {
      "id": "c3546db3-2a28-4f98-87bd-1556c8ee3e8c",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1260,
        -120
      ],
      "parameters": {
        "color": 7,
        "width": 600,
        "height": 560,
        "content": "### 1. Collect all original images file names\nTrigger the workflow to collect the names of all the images you want to process that are stored in a specific folder.\n\n### How to set up?\n- **Search all files of a specific Google Drive Folder**:\n   1. Add your Google Drive API credentials to access the Google Drive Folders\n   2. Select the folder that contains all the files you want to process\n[Learn more about the Google Drive API](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googledrive/)\n- **Prepare the subfolders**:\n   - Create a sub-folder to store processed images named: **Remove Background**\n   - Create a sub-folder to store the original files after processing name: **Original**\n  \n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "18181d47-99e1-4ec6-9f0c-4e46c5f42315",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -520,
        -120
      ],
      "parameters": {
        "color": 7,
        "width": 1000,
        "height": 620,
        "content": "### 2. Remove backgrounds with Photoroom API & save the results in the sub-folder **Remove Background**\nFor each image, you use the API to remove the background. The result is saved in the sub-folder **Remove Background**.\n\n### How to set up?\n- **Download file from Google Drive**:\n   1. Add your Google Drive API credentials to access the Google Drive Folders\n   2. Select the sub-folder location\n[Learn more about the Google Drive API](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googledrive/)\n- **Remove Background with Photoroom API**:\n   1. Add your Photoroom API key \n[Learn more about the Photoroom API](https://docs.photoroom.com/)\n\n*You can test the API with the free sandbox mode that enables 1,000 calls per month.*\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "91ffb1ae-3a55-460b-8d29-6f28ae33c83d",
      "name": "Photoroom API Remove Background",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        0,
        300
      ],
      "parameters": {
        "url": "https://image-api.photoroom.com/v2/edit",
        "method": "POST",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file",
              "outputPropertyName": "result-sandbox-mode.png"
            }
          }
        },
        "sendBody": true,
        "contentType": "multipart-form-data",
        "sendHeaders": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "shadow.mode",
              "value": "ai.soft"
            },
            {
              "name": "background.color",
              "value": "FFFFFF"
            },
            {
              "name": "padding",
              "value": "0.1"
            },
            {
              "name": "imageFile",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "data"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Accept",
              "value": "image/png, application/json"
            },
            {
              "name": "x-api-key"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "5c99a353-1a07-400e-996a-fbd83c735dce",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -520,
        540
      ],
      "parameters": {
        "color": 7,
        "width": 1000,
        "height": 560,
        "content": "### 3. Move Processed Images \nAfter processing, the images are moved to the sub-folder **Original**.\n\n### How to set up?\n- **Move file in Google Drive**:\n   1. Add your Google Drive API credentials to access the Google Drive Folders\n   2. Select the sub-folder \n[Learn more about the Google Drive API](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googledrive/)\n- **Remove Background with Photoroom API**:\n   1. Add your Photoroom API key \n[Learn more about the Photoroom API](https://docs.photoroom.com/)\n\n*You can test the API with the free sandbox mode that enables 1,000 calls per month.*\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "3a7e0bcd-eb5a-4609-9359-8e632cace6d3",
      "name": "Daily at 08:00 am",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -1020,
        220
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 8
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "8281445b-9cf1-4e43-8a19-9e3b26b8d67e",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -120
      ],
      "parameters": {
        "width": 660,
        "height": 460,
        "content": "### [\ud83d\udcfaComplete Tutorial](https://www.youtube.com/watch?v=gBn9wd0fJ54)\n![Thumbnail](https://www.samirsaci.com/content/images/2025/05/image-4.png)\n"
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Get all files": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          },
          {
            "node": "Loop Over Items1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Image": {
      "main": [
        [
          {
            "node": "Photoroom API Remove Background",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Download Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items1": {
      "main": [
        [],
        [
          {
            "node": "Move to Original",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Move to Original": {
      "main": [
        [
          {
            "node": "Loop Over Items1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Daily at 08:00 am": {
      "main": [
        [
          {
            "node": "Get all files",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save to Remove Background": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Photoroom API Remove Background": {
      "main": [
        [
          {
            "node": "Save to Remove Background",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Tags: Marketing, Image Processing, Automation

Source: https://n8n.io/workflows/4398/ — original creator credit. Request a take-down →

More Web Scraping workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Web Scraping

This workflow creates a daily, automated backup of all workflows in a self-hosted n8n instance and stores them in Google Drive. Instead of exporting every workflow on every run, it uses content hashin

HTTP Request, Google Drive, Data Table +1
Web Scraping

This workflow automatically creates daily backups of all n8n workflows and stores them in Google Drive, using the n8n API to export workflows and a scheduled retention policy to keep storage organized

Google Drive, HTTP Request
Web Scraping

Title: ⚙️ Deep Dive: Automating Weekly US Trademark Reports with n8n, RapidAPI & Google Drive (No-Code Workflow)

HTTP Request, Google Drive
Web Scraping

This automation organizes your n8n workflows files into categorizes (Active, Template, Done, Archived) and uploads them directly to a categorized Google Drive folders. It is designed to help users man

Google Drive, HTTP Request, Time Saved
Web Scraping

This automation organizes and consolidates your n8n workflows into categorized JSON files (Active, Template, Done, Archived) and uploads them directly to a Google Drive folder. It is designed to help

Google Drive, Time Saved, HTTP Request