AutomationFlowsWeb Scraping › Automatically Send Daily Nikkei 225 Closing Price to Line

Automatically Send Daily Nikkei 225 Closing Price to Line

ByMasaki Go @pippi on n8n.io

This workflow automatically fetches the Nikkei 225 closing price every weekday and sends a formatted message to a list of users on LINE.

Cron / scheduled trigger★★★★☆ complexity9 nodesHTTP Request
Web Scraping Trigger: Cron / scheduled Nodes: 9 Complexity: ★★★★☆ Added:

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

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": "7d76b3b0-a139-4817-aa9b-b0eddfeec2a9",
      "name": "Every Weekday at 4 PM JST",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        80,
        -112
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "0 0 0 * * 1-5"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "449ae1fd-bf18-4d7f-9dd9-4be744652aa7",
      "name": "Get Nikkei 225 Data",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        288,
        -112
      ],
      "parameters": {
        "url": "https://8080-id15jiyrj1k5dcuz7d9nz-3e90844d.manus-asia.computer/nikkei",
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "efb7f181-0873-4865-a49c-37126be8de32",
      "name": "Format Message",
      "type": "n8n-nodes-base.set",
      "position": [
        544,
        -112
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "38771d3a-f6b4-4298-95bd-18e4f4aaef42",
      "name": "Prepare LINE API Payload",
      "type": "n8n-nodes-base.code",
      "position": [
        752,
        -112
      ],
      "parameters": {
        "jsCode": "// \u9001\u4fe1\u5148\u306eLINE\u30e6\u30fc\u30b6\u30fcID\u30ea\u30b9\u30c8\nconst userIds = [\n  \"U1734402c36e0ccc28ca2f40fa752e923\",\n];\n\n// \u524d\u306e\u30ce\u30fc\u30c9\u304b\u3089\u65e5\u7d4c\u5e73\u5747\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\nconst data = $input.first().json;\n\n// \u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u4f5c\u6210\nconst message = `\ud83d\udcca \u672c\u65e5\u306e\u65e5\u7d4c\u5e73\u5747\u682a\u4fa1 (${data.date})\n\n\u7d42\u5024: ${data.close}\u5186\n\u524d\u65e5\u6bd4: ${data.change}\u5186 (${data.change_pct})`;\n\n// LINE Messaging API\u306e\u30da\u30a4\u30ed\u30fc\u30c9\u3092\u4f5c\u6210\nconst payload = {\n  to: userIds,\n  messages: [\n    {\n      type: \"text\",\n      text: message\n    }\n  ]\n};\n\nreturn [{ json: payload }];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "de9e09e8-fa41-437c-a0cb-f9c367cd2d11",
      "name": "Send to LINE via HTTP",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        944,
        -112
      ],
      "parameters": {
        "url": "https://api.line.me/v2/bot/message/multicast",
        "method": "POST",
        "options": {
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={{ $json }}",
        "sendBody": true,
        "jsonHeaders": "{\n  \"Authorization\": \"Bearer YOUR_TOKEN_HERE\",\n  \"Content-Type\": \"application/json\"\n}",
        "sendHeaders": true,
        "specifyBody": "json",
        "specifyHeaders": "json"
      },
      "typeVersion": 4.2
    },
    {
      "id": "124a4e98-6b26-4f19-a852-c644093719a9",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -352,
        -336
      ],
      "parameters": {
        "width": 304,
        "height": 528,
        "content": "This workflow automatically fetches the Nikkei 225 closing price every weekday and sends a formatted message to a list of users on LINE.\n\n### How it works\n1.  **Trigger:** Runs every weekday at 4 PM JST (market close).\n2.  **Get Data:** Fetches the latest Nikkei 225 data from an API.\n3.  **Format & Send:** A Code node formats the data and sends it to a list of LINE users.\n\n### Setup steps\n1.  **Add Credentials:** In the \"Send to LINE...\" node (Section 2), add your LINE API Token to the 'Authorization' header.\n2.  **Add User IDs:** In the \"Prepare LINE...\" node (Section 2), edit the 'userIds' array.\n3.  **Update API URL:** In the \"Get Nikkei 225 Data\" node (Section 1), replace the temporary URL with your own."
      },
      "typeVersion": 1
    },
    {
      "id": "3881f2f1-8b99-43f1-8377-e207351d209f",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        16,
        -304
      ],
      "parameters": {
        "color": 7,
        "width": 432,
        "height": 400,
        "content": "## 1. Get Daily Stock Data\nThis section runs on a schedule and fetches the latest stock data from an API."
      },
      "typeVersion": 1
    },
    {
      "id": "3e9c866a-e1a2-4026-868e-5fc0b7ce01e5",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        464,
        -304
      ],
      "parameters": {
        "color": 7,
        "width": 768,
        "height": 400,
        "content": "## 2. Format & Send to LINE\nThis section formats the data into a message and sends it via the LINE Messaging API."
      },
      "typeVersion": 1
    },
    {
      "id": "5ecd1d08-a18d-4611-8df6-d1825066668d",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        480,
        -208
      ],
      "parameters": {
        "color": 3,
        "width": 208,
        "height": 272,
        "content": "Note: This node is unused and can be deleted. All formatting is done in the \"Code\" node."
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Format Message": {
      "main": [
        [
          {
            "node": "Prepare LINE API Payload",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Nikkei 225 Data": {
      "main": [
        [
          {
            "node": "Format Message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare LINE API Payload": {
      "main": [
        [
          {
            "node": "Send to LINE via HTTP",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Every Weekday at 4 PM JST": {
      "main": [
        [
          {
            "node": "Get Nikkei 225 Data",
            "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

This workflow automatically fetches the Nikkei 225 closing price every weekday and sends a formatted message to a list of users on LINE.

Source: https://n8n.io/workflows/10915/ — 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 workflow automatically tracks hotel room prices, detects price drops, and sends real-time email alerts with savings calculations. It continuously monitors multiple hotels and room types to he

HTTP Request, Email Send
Web Scraping

YST Price Tracker. Uses httpRequest. Scheduled trigger; 10 nodes.

HTTP Request
Web Scraping

This workflow template, "Gold Price Alert," is designed to monitor gold prices at regular intervals and send real-time notifications via LINE when the price exceeds a specified threshold. By leveragin

HTTP Request
Web Scraping

Spin up a tiny, serverless-style API from n8n that returns BTC/ETH prices & 24h changes plus USD→EUR and USD→NGN from public, no-key data sources. Ideal for dashboards, low-code apps, or internal tool

HTTP Request
Web Scraping

> Watch the full Youtube Video Tutorial [](https://youtu.be/Y-wUr2-UYZk)

Data Table, HTTP Request, Google Sheets +1