AutomationFlowsWeb Scraping › E-commerce Ml Automation Pipeline - Optimized

E-commerce Ml Automation Pipeline - Optimized

E-Commerce ML Automation Pipeline - Optimized. Uses httpRequest, microsoftSql. Webhook trigger; 8 nodes.

Webhook trigger★★★★☆ complexity8 nodesHTTP RequestMicrosoft Sql
Web Scraping Trigger: Webhook Nodes: 8 Complexity: ★★★★☆ Added:

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
{
  "name": "E-Commerce ML Automation Pipeline - Optimized",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "ml-trigger",
        "options": {}
      },
      "id": "ddd944df-3814-492b-ab86-28f3796ba51b",
      "name": "D\u00e9clencheur Airflow",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 1,
      "position": [
        -600,
        200
      ]
    },
    {
      "parameters": {
        "jsCode": "return [{\n  \"models\": [\n    { \"model\": \"TimeSeries\", \"endpoint\": \"sales_forecast\", \"table\": \"ML_SALES_FORECAST\" },\n    { \"model\": \"Clustering\", \"endpoint\": \"segmentation\", \"table\": \"ML_CUSTOMER_SEGMENTS\" },\n    { \"model\": \"Regression\", \"endpoint\": \"regression\", \"table\": \"ML_REGRESSION_RESULTS\" },\n    { \"model\": \"Classification\", \"endpoint\": \"classification\", \"table\": \"ML_CLASSIFICATION_RESULTS\" },\n    { \"model\": \"Recommendation\", \"endpoint\": \"recommendations\", \"table\": \"ML_RECOMMENDATIONS\" }\n  ]\n}];"
      },
      "id": "model-metadata-node",
      "name": "Liste des Mod\u00e8les",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        -380,
        200
      ]
    },
    {
      "parameters": {
        "fieldToSplitOut": "models",
        "options": {}
      },
      "id": "prepare-models-node",
      "name": "Pr\u00e9parer Mod\u00e8les",
      "type": "n8n-nodes-base.splitOut",
      "typeVersion": 1,
      "position": [
        -180,
        200
      ]
    },
    {
      "parameters": {
        "batchSize": 1,
        "options": {}
      },
      "id": "loop-node",
      "name": "Boucle sur mod\u00e8les",
      "type": "n8n-nodes-base.splitInBatches",
      "typeVersion": 3,
      "position": [
        20,
        200
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "=http://ml-api:8000/predict/{{$json.endpoint}}",
        "options": {}
      },
      "id": "api-call-node",
      "name": "Appel API ML",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.1,
      "position": [
        220,
        200
      ]
    },
    {
      "parameters": {
        "fieldToSplitOut": "data",
        "options": {}
      },
      "id": "split-data-node",
      "name": "Extraire Lignes",
      "type": "n8n-nodes-base.splitOut",
      "typeVersion": 1,
      "position": [
        420,
        200
      ]
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict"
          },
          "conditions": [
            {
              "id": "null-check",
              "leftValue": "={{Object.keys($json).length > 0}}",
              "rightValue": true,
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "id": "filter-node",
      "name": "V\u00e9rification Null",
      "type": "n8n-nodes-base.filter",
      "typeVersion": 2,
      "position": [
        620,
        200
      ]
    },
    {
      "parameters": {
        "table": "={{$('Boucle sur mod\u00e8les').first().json.table}}",
        "columns": "={{Object.keys($json).join(', ')}}"
      },
      "id": "sql-node",
      "name": "Insertion SSMS",
      "type": "n8n-nodes-base.microsoftSql",
      "typeVersion": 1.1,
      "position": [
        820,
        200
      ],
      "credentials": {
        "microsoftSql": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "D\u00e9clencheur Airflow": {
      "main": [
        [
          {
            "node": "Liste des Mod\u00e8les",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Liste des Mod\u00e8les": {
      "main": [
        [
          {
            "node": "Pr\u00e9parer Mod\u00e8les",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pr\u00e9parer Mod\u00e8les": {
      "main": [
        [
          {
            "node": "Boucle sur mod\u00e8les",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Boucle sur mod\u00e8les": {
      "main": [
        [],
        [
          {
            "node": "Appel API ML",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Appel API ML": {
      "main": [
        [
          {
            "node": "Extraire Lignes",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extraire Lignes": {
      "main": [
        [
          {
            "node": "V\u00e9rification Null",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "V\u00e9rification Null": {
      "main": [
        [
          {
            "node": "Insertion SSMS",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Insertion SSMS": {
      "main": [
        [
          {
            "node": "Boucle sur mod\u00e8les",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": true,
  "settings": {
    "executionOrder": "v1"
  }
}

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.

Pro

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

About this workflow

E-Commerce ML Automation Pipeline - Optimized. Uses httpRequest, microsoftSql. Webhook trigger; 8 nodes.

Source: https://github.com/mohbenkhebbab/-Industrial-Grade-AI-E-Commerce-Ecosystem/blob/72c05cbf4ea061b48efece46c7ac597f912a1703/E_Commerce__airflow_Orchestration/n8n_Workflows/pipeline_n8n_ml_automation.json — 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 n8n template provides enterprise-level version control for your workflows using GitHub integration. Stop losing hours to broken workflows and manual exports – get proper commit history, visual di

n8n, Execute Workflow Trigger, HTTP Request +1
Web Scraping

This flow creates dummy files for every item added in your *Arrs (Radarr/Sonarr) with the tag .

HTTP Request, Ssh
Web Scraping

This workflow acts as a central API gateway for all technical indicator agents in the Binance Spot Market Quant AI system. It listens for incoming webhook requests and dynamically routes them to the c

HTTP Request
Web Scraping

Sign PDF documents with legally-compliant digital signatures using X.509 certificates. Supports multiple PAdES signature levels (B, T, LT, LTA) with optional visible stamps.

Execute Command, HTTP Request, Read Write File +1
Web Scraping

📡 This workflow serves as the central Alpha Vantage API fetcher for Tesla trading indicators, delivering cleaned 20-point JSON outputs for three timeframes: , , and . It is required by the following a

HTTP Request