
n8n Line Message API Template
Line Message API : Push Message & Reply


如何使用 n8n Template(影片)
Line Messsage API
Line Notify 即將於 2025-03-31 停止服務,
或是相信之前已經有不少人在使用 Line Message API 來推播
這次由於自動化的需求,就用了 n8n 來串
用起來覺得很方便,或許其他人也有這樣的需求
就打算把它做成一個 n8n 的 Template
未來想使用的人可以馬上套用
Line 後台
首先我們先假設你已經有官方帳號了
Line 的後台其實有兩種,但兩者都會用到
這篇文章會只關注在如果要用官方帳號來發送 Message API
有哪些要注意的地方
- 官方帳號
Line OA 官方帳號 後台

- - 可以更改顯示名稱和頭像
- - 可以設定 Webhook
- 開發者後台
Line Developer Console

- - 可以取得自己的 Line UID
- - 可以取得不過期的 Token
- - 也可以設定 Webhook (還多了測試的功能)
n8n 設定 Webhook
Developer Console 的 Webhook 設定在這裡,貼上後可以按下 Verify
成功的話會顯示 Success

從 n8n 取得 Webhook URL:

要注意: n8n 的 webhook 有分兩種: Test
和 Production
可以先貼上 Test
的 URL 來測試,先不要按 Verify
回到 n8n 啟用 Listen for test event 後,再回到 Line 按 Verify
取得 Token
下滑一點就會看到 Channel access token
這邊可以產生 long-lived
的 Token,意思是指不會過期
會過期的 Token 相對麻煩很多,因為過一陣子要回來更新
相反 long-lived
雖然不會過期,但就要負責保管好,一但被盜用就很麻煩
要記得回到這邊重新發行一個新的 token

n8n 設定 Credentials
拿到 Token 後就能回到 n8n 設定 Credentials 了
設定這個的原因是 Token 在很多 Request 節點都會用到
每次都要貼上 Token 有點麻煩,統一管理比較好
詳細步驟圖解:

注意!
Value 的值需要加上
Bearer
最後的空格也是必須的
取得自己的 Line UID
另外在 Basic
的下方也會有一個 Your user ID
這是你自己的 Line UID,用來做推播的測試時會用到
可以先記起來

Line Push Message
Push Message 就是我們主動推播訊息給使用者
可以是單一使用者,或是一個群組,又或是多個甚至所有使用者

Send push message
發送訊息給單一使用者,也是這個 n8n 範例中的場景
官方範例的 CURL 和解釋:
1 | curl -v -X POST https://api.line.me/v2/bot/message/push \ |
參數解說:

- to: 送給誰(可以是使用者、群組、聊天室)
-
- 使用者 U 開頭
-
- 群組 C 開頭
-
- 聊天室 R 開頭
-
- messages: 訊息內容(一次最多五筆,費用還是只算一則)
- notificationDisabled: 是否要推播
-
- true: 使用者不會收到推播通知
-
- false: 使用者會收到推播通知(除非使用者在 LINE 或裝置上關閉了通知)
-
- 預設值: false
-
- customAggregationUnits: 訊息的聚合稱,區分大小寫
n8n request 設定

Request 節點一樣是 Post
網址固定為
https://api.line.me/v2/bot/message/push
如上面說明,填入 to: ${使用者的 Line UID}, messages: 訊息內容 就可以發送了喔!
Line Webhook 事件
Line Developer Console 的 Webhook 設定了 n8n 的 Webhook URL 之後,我們會收到各式各樣的事件訊息。以下是主要的事件類型:
Message 事件
text
: 收到文字訊息image
: 收到圖片video
: 收到影片audio
: 收到音訊file
: 收到檔案location
: 收到位置資訊sticker
: 收到貼圖
好友相關事件
follow
: 使用者加入好友unfollow
: 使用者封鎖或刪除好友
群組相關事件
join
: Bot 被邀請加入群組或聊天室leave
: Bot 被移出群組或聊天室memberJoined
: 新成員加入群組或聊天室memberLeft
: 成員離開群組或聊天室
其他事件
postback
: 使用者點擊按鈕後的回傳事件beacon
: 使用者進入 LINE Beacon 的範圍accountLink
: 使用者連結帳號的結果things
: IoT 裝置相關事件unsend
: 使用者收回訊息
每個事件都會包含以下基本資訊:
type
: 事件類型timestamp
: 事件發生時間source
: 事件來源(使用者、群組或聊天室)webhookEventId
: 事件的唯一識別碼deliveryContext
: 訊息傳遞狀態
Webhook JSON 範例
Join - Bot 加入群組、聊天室
1 | { |
Message - Bot 接收到訊息
1 | { |
Webhook 用途
最直接的用途就會是下面用到的 Reply API
Webhook 資料有 replyToken
就可以用在 Reply API
多加一些資料判斷後
就能做到例如:
只要有人傳送了 包含或等於 “XXX” 那 Bot 就會執行什麼任務並回傳特定訊息

Line Reply API
參數的介紹:

n8n request 設定

新增一個 Request 後
網址固定為 https://api.line.me/v2/bot/message/reply
Method 選擇 POST
Body JSON:
1 | { |

這個示範是直接回傳收到的訊息內容
示意圖:

以上就是這次 Line Message API <-> n8n 的分享
如果操作上有問題,歡迎透過下方社群連結或信箱聯絡