返回首頁AppSheet

AppSheet LINE 整合教學:用 Messaging API 打造 LINE 通知機器人【2026】

20 min 分鐘閱讀
#AppSheet#LINE#LINE Messaging API#LINE Notify#Webhook#自動化#通知#機器人#企業應用#No-Code#整合

AppSheet LINE 整合教學:用 Messaging API 打造 LINE 通知機器人【2026】

重要更新(2026-07):LINE 官方已於 2025 年 3 月 31 日正式終止 LINE Notify 服務notify-bot.line.menotify-api.line.me 全部停用。舊教學裡「發行 Notify Token、打 notify-api」的做法現在會完全失敗。本文已全面改寫為官方指定的替代方案 LINE Messaging API。如果你在找「LINE Notify 替代方案」,這篇就是。(來源:LINE Developers 服務終止公告

在台灣做 App,通知一定要發 LINE。

Email 可能不會馬上看,但 LINE 訊息幾乎秒讀。

這篇教學會教你如何讓 AppSheet 用 Messaging API 發送 LINE 通知,從設定到實際應用。

想先了解 AppSheet 基礎功能,請參考 AppSheet 完整指南


為什麼要整合 LINE?

先說為什麼 LINE 通知這麼重要。

台灣最普及的通訊軟體

LINE 在台灣的滲透率超過 90%。

幾乎每個人都有 LINE,而且整天開著。

相比之下:

  • Email:可能一天才看一次
  • SMS:有成本,且常被忽略
  • App 推播:需要安裝專用 App

LINE 的優勢:

特點說明
即時性訊息秒達,大多數人會馬上看
普及性台灣幾乎人人都有
有免費額度LINE 官方帳號提供每月免費訊息額度
無學習成本使用者不用裝新 App、不用學新介面

AppSheet + LINE 的應用場景

把 AppSheet 和 LINE 接起來,能做什麼?

  • 訂單通知:新訂單進來,業務立刻收到 LINE
  • 審核提醒:請假申請送出,主管 LINE 收到通知
  • 異常警示:庫存低於安全量,採購人員馬上知道
  • 每日報表:每天早上自動發送昨日業績摘要

這些原本要人工追蹤的事情,都能自動化。


整合方式:改用 LINE Messaging API

過去這類教學有兩條路:LINE Notify 和 LINE Messaging API。

現在只剩一條路。 LINE Notify 已於 2025-03-31 終止,所以本文完整教你用 LINE Messaging API

Messaging API 是 LINE 官方帳號(LINE Official Account)的程式化介面,比舊的 Notify 更強:不只能單向通知,還能雙向互動、發送圖片與 Flex 訊息。發送方式有三種,依需求選:

push:送給指定的人或群組

適合: 通知特定業務、特定主管、或某個 LINE 群組

指定收件人的 userId 或群組的 groupId,訊息只會送給那個對象。這是最精準的做法,但你要先取得對方的 ID(見下方「如何取得 userId/groupId」)。

broadcast:送給所有好友

適合: 全體通知、內部小團隊、最快上手

不需要任何 ID——只要團隊成員把你的 LINE 官方帳號加為好友,AppSheet 打 broadcast 端點,所有好友都會收到。這是設定最簡單、最接近舊 Notify 使用體驗的替代方式,本文的範例會以它為預設。

multicast:一次送多位指定使用者

適合: 同時通知一批指定的人(帶多個 userId

介於 push 與 broadcast 之間,一次帶多個使用者 ID。

插圖 1:LINE Messaging API 三種送法比較

AppSheet 串接 LINE Messaging API 教學

Step by step 教你設定。

Step 1:建立 LINE 官方帳號並取得 Channel Access Token

Messaging API 是掛在「LINE 官方帳號」底下的,所以第一步是建立官方帳號、啟用 Messaging API,再拿到通行證 channel access token

步驟:

  1. 用 LINE 帳號或 Email 註冊 LINE Business ID,在 LINE Official Account Manager 建立一個 LINE 官方帳號
  2. 在 Official Account Manager 裡啟用 Messaging API(自 2024 年 9 月起,Messaging API channel 只能從這裡開通,不能再從 Developers Console 直接建立)
  3. 第一次啟用會要你註冊開發者資訊、選一個 Provider
  4. 用同一組帳號登入 LINE Developers Console

取得 channel access token:

  1. 進入你的 channel → 點上方 「Messaging API」分頁
  2. 找到 「Channel access token (long-lived)」,點 「Issue」 發行
  3. 重要:複製並妥善保存這個 Token——它是長效、不會過期的通行證,等同你的 LINE 官方帳號密碼,外洩就能被人冒名發訊息

(來源:LINE Developers – Channel access token

Token 格式範例(實際會長很多):

eyJhbGciOiJIUzI1NiJ9.....很長一串....abcDEF123

Step 2:設定 AppSheet Automation

接下來在 AppSheet 設定自動化,觸發時呼叫 LINE Messaging API。這一段跟舊教學幾乎一樣,只有 Webhook 那幾個欄位換掉

步驟:

  1. 開啟你的 AppSheet App
  2. 進入「Automation」頁面
  3. 點「New Bot」建立新的自動化

設定 Event(觸發條件):

  1. 點「Create a new event」

  2. Event Type 選擇(依需求):

    • Data Change:資料變更時觸發
    • Schedule:排程執行
  3. 如果選 Data Change:

    • Table:選擇要監控的資料表
    • Data change type:選擇 Adds only / Updates only / 或 All changes

設定 Process(流程):

  1. 點「Add a step」
  2. 選擇「Call a webhook」

設定 Webhook(這裡是跟 Notify 最大的差別):

  • Preset:選「Custom」
  • URL(送給所有好友用 broadcast):
    https://api.line.me/v2/bot/message/broadcast
    
    (若要送給指定對象,改用 https://api.line.me/v2/bot/message/push
  • HTTP Method:POST
  • HTTP Content TypeApplication/JSON(Notify 是 x-www-form-urlencoded,Messaging API 改用 JSON)

設定 Headers:

點「Add」新增 Header:

  • Header Name:Authorization
  • Header Value:Bearer YOUR_CHANNEL_ACCESS_TOKEN

把 YOUR_CHANNEL_ACCESS_TOKEN 換成 Step 1 拿到的 token。

格式是 Bearer + 空格 + Token。

設定 Body(JSON 格式):

{
  "messages": [
    { "type": "text", "text": "<<[欄位名稱]>> 的訊息內容" }
  ]
}

如果是 push(送給指定對象),最外層要多一個 to

{
  "to": "Uxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "messages": [
    { "type": "text", "text": "訊息內容" }
  ]
}

(來源:LINE Developers – Send messages

Step 3:設定訊息內容

訊息文字放在 messages 陣列裡的 text 欄位,可以帶入 AppSheet 的動態資料。

基本格式:

{
  "messages": [
    { "type": "text", "text": "新訂單通知\n\n客戶:<<[CustomerName]>>\n金額:<<[Amount]>>\n備註:<<[Notes]>>" }
  ]
}

說明:

  • \n = 換行(Messaging API 用 \n,不是 Notify 時代的 %0A
  • <<[欄位名稱]>> = 帶入該欄位的值
  • \n\n = 兩次換行(空一行)
  • 小提醒:<<...>> 代入的若是使用者自由輸入的文字,含有雙引號 " 或換行時可能破壞 JSON 格式,建議在來源欄位先清理

實際收到的訊息會是:

新訂單通知

客戶:王小明
金額:5000
備註:請盡快處理

Step 4:測試通知

設定完成後要測試。

測試步驟:

  1. 先確認你(或測試帳號)已經把該 LINE 官方帳號加為好友(broadcast、push 都要對方是好友才收得到)
  2. 回到 AppSheet App 主畫面
  3. 新增一筆符合觸發條件的資料
  4. 等待幾秒(通常 5-10 秒內)
  5. 檢查 LINE 是否收到通知

沒收到怎麼辦?

問題可能原因解決方式
401 UnauthorizedToken 錯誤或已失效到 Console「Messaging API」分頁重新發行 long-lived token,確認有加 "Bearer "
400 Bad RequestJSON 格式錯檢查引號、逗號、跳脫字元是否正確
完全沒收到URL 或 Content-Type 錯確認是 api.line.me/v2/bot/message/broadcast(或 push),Content-Type 為 application/json
push 沒收到to 的 ID 錯,或對方沒加好友確認 userId/groupId 正確且對方已加官方帳號;不確定就先用 broadcast
收到但斷行沒效用了 %0AJSON 內換行要用 \n

插圖 2:AppSheet Webhook 設定畫面

如何取得 userId/groupId(push/multicast 才需要)

broadcast 不需要任何 ID,直接送給所有好友。但如果你要用 push 精準送給某個人或某個群組,就得先拿到對方的 ID:

  • userId:當使用者加你的官方帳號為好友、或傳訊息給它時,LINE 會透過 Webhook 事件把該使用者的 userId 送到你設定的 Webhook 網址
  • groupId:把官方帳號邀進 LINE 群組後,群組事件會帶出 groupId

也就是說,要拿到 ID 需要一個能接收 LINE Webhook 事件的網址(稍微進階)。如果你只是要「通知團隊」,最省事的做法就是用 broadcast,讓成員加官方帳號好友即可,完全不用碰 ID。

應用場景

實際的應用範例(以下用 broadcast,若要送特定對象改成 push 並加 to)。

場景 1:訂單通知

新訂單進來,團隊馬上收到通知。

觸發條件:

  • Table:Orders
  • Event:Adds only(新增訂單時)

訊息內容:

{
  "messages": [
    { "type": "text", "text": "📦 新訂單通知\n\n訂單編號:<<[OrderID]>>\n客戶名稱:<<[CustomerName]>>\n訂單金額:$<<[Amount]>>\n下單時間:<<[CreatedAt]>>\n\n請儘快處理!" }
  ]
}

收到的訊息:

📦 新訂單通知

訂單編號:ORD-2025-001
客戶名稱:王小明
訂單金額:$15,000
下單時間:2025-12-15 14:30

請儘快處理!

場景 2:審核提醒

請假申請送出,主管收到通知。

觸發條件:

  • Table:LeaveRequests
  • Event:Adds only
  • Condition(選填):[Status] = "待審核"

訊息內容:

{
  "messages": [
    { "type": "text", "text": "📝 請假申請通知\n\n申請人:<<[EmployeeName]>>\n假別:<<[LeaveType]>>\n日期:<<[StartDate]>> ~ <<[EndDate]>>\n事由:<<[Reason]>>\n\n請至系統審核" }
  ]
}

場景 3:異常警示

庫存低於安全量,採購人員收到警示。

這個稍微複雜,需要用 Automation 的條件判斷。

設定方式:

  1. Event:Schedule(例如每天早上 9 點)
  2. Process 中加入「Run a data action」
  3. 對 Products 表執行 Action
  4. 在 Action 中設定條件:[Stock] < [SafetyStock]
  5. 符合條件的才發送 Webhook

訊息內容:

{
  "messages": [
    { "type": "text", "text": "⚠️ 庫存警示\n\n商品:<<[ProductName]>>\n目前庫存:<<[Stock]>>\n安全庫存:<<[SafetyStock]>>\n\n請儘快補貨!" }
  ]
}

更多自動化設定請參考 AppSheet Automation 教學

場景 4:每日報表

每天早上自動發送昨日業績摘要。

設定方式:

  1. Event:Schedule

    • 頻率:Daily
    • 時間:早上 8:00
  2. 建立一個統計用的虛擬欄位(Virtual Column)計算昨日總額

  3. Webhook 訊息帶入統計數字

訊息範例:

{
  "messages": [
    { "type": "text", "text": "📊 每日業績報表\n\n訂單數:<<[昨日訂單數]>> 筆\n營業額:$<<[昨日營業額]>>\n\n加油!" }
  ]
}

想要更進階的 LINE 整合? broadcast 適合全體通知,指定收件人、雙向互動、Flex 訊息卡片則需要 push 搭配 Webhook 事件處理。

預約技術諮詢,讓我們幫你評估最適合的整合方案。


進階技巧

讓 LINE 通知更聰明。

條件式通知

不是所有資料都需要通知,可以設條件(這部分在 AppSheet 端,跟 LINE 無關,做法不變)。

範例:只有大額訂單才通知

在 Automation 的 Event 中設定 Condition:

[Amount] >= 10000

這樣只有訂單金額 >= 10000 的才會發 LINE。

範例:只通知特定人員

[AssignedTo] = USEREMAIL()

只通知負責人。

圖片通知

Messaging API 用 image 訊息物件發送圖片,把圖放進 messages 陣列即可:

{
  "messages": [
    { "type": "text", "text": "新商品上架" },
    {
      "type": "image",
      "originalContentUrl": "https://example.com/full.jpg",
      "previewImageUrl": "https://example.com/thumb.jpg"
    }
  ]
}

注意:originalContentUrlpreviewImageUrl 都必須是 HTTPS 公開網址,LINE 不會載入 HTTP 圖片。

發送貼圖

Messaging API 用 sticker 訊息物件發貼圖:

{
  "messages": [
    { "type": "sticker", "packageId": "446", "stickerId": "1988" }
  ]
}

可用的貼圖 ID 查詢:https://developers.line.biz/en/docs/messaging-api/sticker-list/

群組通知

發送到 LINE 群組而非個人。

設定方式:

  1. 把你的 LINE 官方帳號邀進目標群組
  2. 從群組的 Webhook 事件取得該群組的 groupId
  3. 用 push 端點、to 帶入 groupId 發送

注意事項:

  • push 一次只能有一個 to(一個 userId 或 groupId)
  • 群組成員都會看到通知
  • 若不想處理 groupId,改用 broadcast 讓成員加官方帳號好友即可

多目標通知

同時通知多個人或群組。

  • multicastto 帶入多個 userId 的陣列,一次送出
    {
      "to": ["Uxxxx1...", "Uxxxx2...", "Uxxxx3..."],
      "messages": [ { "type": "text", "text": "訊息內容" } ]
    }
    
    端點:https://api.line.me/v2/bot/message/multicast
  • broadcast:送給所有好友,最省事

插圖 3:LINE 通知實際畫面

常見問題

LINE Notify 還能用嗎?

不能。 LINE Notify 已於 2025-03-31 正式終止,相關網域(notify-bot.line.me、notify-api.line.me)已停用。現在請一律改用 LINE Messaging API,也就是本文教的做法。

LINE Messaging API 是免費的嗎?

LINE 官方帳號提供每月免費訊息額度,超過額度後依方案付費。免費額度與各方案價格會依地區與時間調整,實際數字請以 LINE 官方帳號的官方定價頁為準,本文不臆測數字。

Channel Access Token 弄丟或外洩了怎麼辦?

到 LINE Developers Console →「Messaging API」分頁 → 重新發行(Reissue) long-lived channel access token;一旦重新發行,舊的 token 會立即失效。接著更新 AppSheet Webhook 裡的 Authorization Header。

建議:把 token 記在安全的地方,不要放進公開的 repo 或訊息。

可以發送給特定使用者嗎?

可以。用 push 端點、to 帶入該使用者的 userId(從 Webhook 事件取得)。若不需要指定對象,用 broadcast 送給所有好友最簡單。

AppSheet 需要付費才能用 Webhook 嗎?

是的。Webhook 屬於 Automation 功能,需要 Starter 方案以上。

詳細費用請參考 AppSheet 費用解析

訊息有長度限制嗎?

Messaging API 單則文字訊息可容納的字數,遠多於已停用的 LINE Notify,一般通知綽綽有餘。實際上限請見官方 Message objects 文件。

為什麼訊息中的換行沒有效果?

Messaging API 的 JSON 內,換行要用 \n(跳脫字元),不是 Notify 時代 URL-encoded 的 %0A

可以接收使用者的回覆嗎?

可以。這正是 Messaging API 勝過已停用 Notify 的地方——它支援 Webhook 接收使用者訊息,能做查詢機器人、審核回覆、聊天機器人等雙向互動。

進階 Webhook 設定請參考 AppSheet API 串接指南


下一步

LINE 通知設定完成後,你的 App 就能即時通知使用者了。

繼續學習

實作建議

  1. 先測試再上線:確認 JSON 格式與收件對象正確
  2. 不要發太多:避免訊息轟炸,只發重要的,也能省訊息額度
  3. 保管好 Token:channel access token 外洩,別人可以冒用你的官方帳號發訊息
  4. 先用 broadcast 上手:不確定 ID 怎麼拿,就從 broadcast 開始,之後再進階到 push

需要更進階的 LINE 整合?

Messaging API 能滿足大部分通知需求,如果你要更完整的雙向互動、自動回覆、Flex 訊息卡片,我們可以幫你規劃。

常見的進階需求:

  • 使用者在 LINE 查詢庫存
  • 主管直接在 LINE 核准請假
  • LINE 聊天機器人回答常見問題
  • 整合 LINE 官方帳號的圖文選單與 Flex 訊息

預約技術諮詢,讓我們幫你打造完整的 LINE 整合方案。


參考資料

  1. LINE Developers – Messaging API overview:https://developers.line.biz/en/docs/messaging-api/
  2. LINE Developers – Send messages(push/multicast/broadcast):https://developers.line.biz/en/docs/messaging-api/sending-messages/
  3. LINE Developers – Channel access token:https://developers.line.biz/en/docs/basics/channel-access-token/
  4. LINE Developers – LINE Notify 服務終止公告(2025-03-31):https://developers.line.biz/en/news/2025/04/01/line-notify/
  5. AppSheet Documentation – Call a webhook

需要專業的雲端建議?

無論您正在評估雲平台、優化現有架構,或尋找節費方案,我們都能提供協助

預約免費諮詢

相關文章