AutomationFlowsGeneral › Users to Google Sheet

Users to Google Sheet

Users to Google Sheet. Uses manualTrigger, httpRequest, googleSheets. Event-driven trigger; 3 nodes.

Event trigger★☆☆☆☆ complexity3 nodesHttp RequestGoogle Sheets
General Trigger: Event Nodes: 3 Complexity: ★☆☆☆☆

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
{
  "id": "9bbf6f23-b8c3-4b1f-b930-69197ba6dfa4",
  "name": "Users to Google Sheet",
  "nodes": [
    {
      "id": "3effa98f-f88c-4c8d-a2f2-3dbf15ea77bd",
      "name": "When clicking 'Execute workflow'",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        -288,
        -16
      ],
      "parameters": {}
    },
    {
      "id": "087c2d01-6a20-47c6-9599-6a0136c99183",
      "name": "HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -32,
        -16
      ],
      "parameters": {
        "url": "https://jsonplaceholder.typicode.com/users",
        "options": {}
      }
    },
    {
      "id": "66bf1544-26d7-4f0d-9130-a7714ae1beed",
      "name": "Append or update row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.7,
      "position": [
        240,
        -16
      ],
      "parameters": {
        "operation": "appendOrUpdate",
        "options": {},
        "documentId": {
          "__rl": true,
          "value": "193K6ZufOQgQcV-7P4D6jyS8ejNfxIv32yvT2bR5lT2k",
          "mode": "list",
          "cachedResultName": "Users",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/193K6ZufOQgQcV-7P4D6jyS8ejNfxIv32yvT2bR5lT2k/edit?usp=drivesdk"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "Sheet1",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/193K6ZufOQgQcV-7P4D6jyS8ejNfxIv32yvT2bR5lT2k/edit#gid=0"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "name": "={{ $json.name }}",
            "username": "={{ $json.username }}",
            "email": "={{ $json.email }}",
            "phone": "={{ $json.phone }}",
            "website": "={{ $json.website }}"
          },
          "matchingColumns": [
            "email"
          ],
          "schema": [
            {
              "id": "name",
              "displayName": "name",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "username",
              "displayName": "username",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "email",
              "displayName": "email",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "phone",
              "displayName": "phone",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "website",
              "displayName": "website",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "When clicking 'Execute workflow'": {
      "main": [
        [
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request": {
      "main": [
        [
          {
            "node": "Append or update row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append or update row in sheet": {
      "main": [
        []
      ]
    }
  },
  "active": true,
  "settings": {},
  "tags": [],
  "createdAt": "2025-09-06T22:32:02.110570",
  "updatedAt": "2025-09-06T22:32:02.110629"
}

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.

About this workflow

Users to Google Sheet. Uses manualTrigger, httpRequest, googleSheets. Event-driven trigger; 3 nodes.

Source: https://github.com/aemal/n8n-python-sdk/blob/14c6b8527fa13d7861217147341b61196ef96f27/n8n-workflows/workflow.json — original creator credit. Request a take-down →

More General workflows → · Browse all categories →