N
n8n Store
Workflow Market
Bulk WhatsApp Number Verify via Unofficial API

Bulk WhatsApp Number Verify via Unofficial API

by spagreenβ€’0 views

Description

Categories

βš™οΈ Automation

Nodes Used

n8n-nodes-base.ifn8n-nodes-base.coden8n-nodes-base.coden8n-nodes-base.waitn8n-nodes-base.limitn8n-nodes-base.stickyNoten8n-nodes-base.httpRequestn8n-nodes-base.googleSheetsn8n-nodes-base.googleSheetsn8n-nodes-base.splitInBatches
PriceGratis
Views0
Last Updated11/28/2025
workflow.json
{
  "id": "CuBmYtNjobSBPXCt",
  "meta": {
    "instanceId": "281fe883012e72eba57c771d5dbf7c3138ca3fe3633c5ba2adf6169821825dd4",
    "templateCredsSetupCompleted": true
  },
  "name": "Bulk WhatsApp Number Verify via Unofficial API",
  "tags": [
    {
      "id": "8UZKwEpVhvJhLDmj",
      "name": "Dev",
      "createdAt": "2025-07-19T17:50:54.267Z",
      "updatedAt": "2025-07-19T17:50:54.267Z"
    }
  ],
  "nodes": [
    {
      "id": "34af5c80-f216-4384-b0e7-e256863dc5c9",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        528,
        32
      ],
      "parameters": {
        "options": {}
      },
      "executeOnce": false,
      "typeVersion": 3
    },
    {
      "id": "3aa6f527-27c6-40b5-92e5-213795bb72fc",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        1616,
        80
      ],
      "webhookId": "a6455832-dc54-4bf5-8710-6bfcc752302f",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "099b92b8-9432-4ede-a542-c960f68fbfdc",
      "name": "Limit",
      "type": "n8n-nodes-base.limit",
      "position": [
        352,
        32
      ],
      "parameters": {
        "maxItems": 60
      },
      "typeVersion": 1
    },
    {
      "id": "e2842b7a-c5fa-4f6b-ac88-0818b27e63b4",
      "name": "Trigger Every 5 Minute",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -272,
        32
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "a96ec4d1-85ec-411f-a17e-67dc9e7dee36",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1232,
        -496
      ],
      "parameters": {
        "color": 4,
        "width": 704,
        "height": 1644,
        "content": "# πŸ“˜ Bulk WhatsApp Number Verification via Unofficial API\n\n## πŸ“Œ Overview\n\nThis **n8n workflow** verifies **unlimited WhatsApp numbers** from a **Google Sheet** using your **own WhatsApp number** through the [WasenderAPI.com](https://www.wasenderapi.com/) platform.\n\n---\n\n## πŸ” What It Does\n\n- βœ… Fetches real-time data from Google Sheets  \n- πŸ” Verifies if a number is registered on WhatsApp  \n- πŸ›‘ Implements delay and batch processing to maintain rate limits  \n- ✏️ Updates verification status back to the Google Sheet  \n\n---\n\n## 🧰 Requirements\n\nBefore setting up the workflow, ensure you have:\n\n- βœ… An active **WhatsApp Account** (Personal or Business)  \n- βœ… **Google Sheets API** configured within your n8n instance  \n- βœ… A properly structured [Google Sheet](https://docs.google.com/spreadsheets/d/1Ui4TzzI-Gq-bsEsrZELwW1Kyddw0IU9L1wxlHikktqw/edit?usp=sharing)  \n- βœ… A **WasenderAPI.com** subscription (starting from ~$6/month)  \n\n---\n\n## πŸ“„ Google Sheet Format\n\n| WhatsApp No   | Verified/Unverified                         | Status     |\n|---------------|----------------------------------|------------|\n| +8801XXXXXXX  |  *(empty)* | *(empty)*  |\n\n> ℹ️ Ensure the `Status` column is initially blank for unverified rows.\n\n---\n\n## βš™οΈ How to Set Up in n8n\n\n### Step 1: πŸ”— Connect to Google Sheets\n- Add a **Google Sheets** node.\n- Authenticate with your Google account.\n- Select your target document and worksheet.\n- Apply a filter to only select rows where `Status` is empty.\n\n### Step 2: πŸ”„ Loop Through Rows with Delay\n- Add a **SplitInBatches** or **Code** node to process 5 rows at a time.\n- Add a **Wait** node (set to 5 seconds) between each request to respect API limits.\n\n### Step 3: 🌐 Verify Number via HTTP Request\n- Add an **HTTP Request** node\n- **Method**: `POST`\n- **URL**: `https://app.wasenderapi.com/api/send-message`\n- **Headers**:\n  - `Content-Type`: `application/json`\n  - `Authorization`: `Bearer YOUR_API_KEY`\n- **JSON Body**:\n```json\n{\n  \"number\": \"{{ $json['WhatsApp No'] }}\",\n  \"message\": \"{{ $json['Message'] }}\"\n}"
      },
      "typeVersion": 1
    },
    {
      "id": "21401f12-03b5-4f15-bf81-04f210c7dac1",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        960,
        48
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "99a8cf5b-869c-410f-93df-4c52f45d6986",
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              },
              "leftValue": "={{ $json.data.exists }}",
              "rightValue": "true"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "66958bcb-2d2b-4d96-888b-07677a192505",
      "name": "Fetch All Pending Contacts for Verifing",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        48,
        32
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupColumn": "Status"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 2104188169,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1iF2bDuwCp5NoauMXSCH_0NAB6nrK55lf8tJwhZdzT5g/edit#gid=2104188169",
          "cachedResultName": "Contacts"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1iF2bDuwCp5NoauMXSCH_0NAB6nrK55lf8tJwhZdzT5g",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1iF2bDuwCp5NoauMXSCH_0NAB6nrK55lf8tJwhZdzT5g/edit?usp=drivesdk",
          "cachedResultName": "WhatsApp Number Verify Via Unofficial API"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "hIOzlTOST3U7PqR8",
          "name": "Google Sheets account"
        }
      },
      "notesInFlow": false,
      "retryOnFail": false,
      "typeVersion": 4.6
    },
    {
      "id": "61482a96-fa92-4d90-9061-5d7f833393ba",
      "name": "Verify WhatsApp Number Using HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        768,
        48
      ],
      "parameters": {
        "url": "=https://www.wasenderapi.com/api/on-whatsapp/{{ $json['WhatsApp No'] }}@s.whatsapp.net",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "eEnvhbO5JFh46Shb",
          "name": "WasenderAPI"
        }
      },
      "executeOnce": false,
      "typeVersion": 4.2
    },
    {
      "id": "8eec2dff-16ac-4769-951e-58d3f28ddcce",
      "name": "Set Status",
      "type": "n8n-nodes-base.code",
      "position": [
        1184,
        -80
      ],
      "parameters": {
        "jsCode": "return { txt: \"Verified\" };\n"
      },
      "typeVersion": 2
    },
    {
      "id": "12b2ef86-e2b0-4516-9b1c-a29ef79cf556",
      "name": "Set Status1",
      "type": "n8n-nodes-base.code",
      "position": [
        1184,
        64
      ],
      "parameters": {
        "jsCode": "return { txt: \"Unverified\" };\n"
      },
      "typeVersion": 2
    },
    {
      "id": "07d39b85-46dc-454f-b5a2-7e5652c9c775",
      "name": "Change State of Rows in Checked",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1408,
        80
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "Checked",
            "row_number": "={{ $('Loop Over Items').item.json.row_number }}",
            "Verified/Unverified": "={{ $json.txt }}"
          },
          "schema": [
            {
              "id": "SL",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "SL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "WhatsApp No",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "WhatsApp No",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Name",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Profile Image URL",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Profile Image URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Verified/Unverified",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Verified/Unverified",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": false,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "row_number"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 2104188169,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1iF2bDuwCp5NoauMXSCH_0NAB6nrK55lf8tJwhZdzT5g/edit#gid=2104188169",
          "cachedResultName": "Contacts"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1iF2bDuwCp5NoauMXSCH_0NAB6nrK55lf8tJwhZdzT5g",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1iF2bDuwCp5NoauMXSCH_0NAB6nrK55lf8tJwhZdzT5g/edit?usp=drivesdk",
          "cachedResultName": "WhatsApp Number Verify Via Unofficial API"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "hIOzlTOST3U7PqR8",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "44bff38d-9ddb-4654-842a-cff4b0681712",
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Set Status",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Set Status1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Status": {
      "main": [
        [
          {
            "node": "Change State of Rows in Checked",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Status1": {
      "main": [
        [
          {
            "node": "Change State of Rows in Checked",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Verify WhatsApp Number Using HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trigger Every 5 Minute": {
      "main": [
        [
          {
            "node": "Fetch All Pending Contacts for Verifing",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Change State of Rows in Checked": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch All Pending Contacts for Verifing": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Verify WhatsApp Number Using HTTP Request": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

η›Έε…³ε·₯作桁