← 所有文章
教學

LINE 已讀 API 遷移指南:2026 年 10 月前改用 markAsRead

若要從 LINE Mark as read API(舊版)遷移,請從 Messaging API 的 webhook 訊息事件取得 markAsReadToken,再呼叫 POST https://api.line.me/v2/bot/chat/markAsRead。新 endpoint 不必另外申請,而且能與 Official Account Chat 一起使用。LINE 將在 2026 年 10 月底停止接受舊 API 的新申請,但沒有宣布在當天停用現有整合。

重點摘要

  • LINE 在 2026 年 5 月 18 日宣布,舊版企業功能將於 10 月底關閉新申請;已核准帳號仍可繼續使用。
  • 新 endpoint 接收 webhook 訊息事件中的不透明 markAsReadToken,不能由使用者 ID 或 message.id 自行組合。
  • POST /v2/bot/chat/markAsRead 會將指定訊息以及更早的訊息一起標示為已讀,因此呼叫順序與確認時機都很重要。
  • 新 endpoint 可配合 Official Account Chat;舊 API 不行,所以這也是客服流程的遷移。
  • UnifyPort 可處理一般帳號的獨立入站訊息,但沒有 message-read API,也不會產生 LINE 官方的 markAsReadToken

LINE 已讀 API 遷移改變了什麼

LINE 的 5 月 18 日通知並非「10 月停用」公告。通知內容是:2026 年 10 月底停止接受 Mark as read API(舊版)的新申請、已核准帳號可繼續使用,且 LINE 正在考慮未來停止該舊功能。新開發應改用 Messaging API 的將訊息標示為已讀流程

兩個契約不同,不能只更換 endpoint:

判斷項目Mark as read API(舊版)Messaging API markAsRead
存取資格需申請的企業選用功能不需另外申請
Chat 功能無法與 Official Account Chat 共用手動標示已讀時需開啟 Chat
輸入值舊 API 的使用者導向契約webhook 訊息事件的 markAsReadToken
影響範圍顯示某位使用者訊息的已讀狀態將 token 對應訊息及更早訊息標示為已讀
新專案建議不建議官方建議

若在 LINE Official Account Manager 關閉 Chat,使用者訊息會自動標示為已讀,這時不必增加 API 呼叫。新 endpoint 適合保持 Chat 開啟、但要由後端控制已讀出現時機的團隊。

如何遷移至 POST /v2/bot/chat/markAsRead

1. 先定義客服流程中的「已讀」

決定哪個業務節點應向使用者顯示已讀:訊息進入佇列、客服實際開啟,或自動處理器已接手。不要把「webhook 已送達」直接當成「真人已讀」。由於一次呼叫可能確認多則待處理訊息,請先把規則寫入操作流程。

盤點所有舊 API 呼叫端、重試工作、Official Account 與環境,並記錄 Chat 是否開啟。舊 API 文件指出,啟用舊功能會停用自動已讀,且不能同時使用 Chat;帳號設定本身就是遷移資料。

2. 將 webhook read token 視為不透明值

使用者傳訊給 LINE Official Account 時,Messaging API 的訊息事件可能包含 message.markAsReadToken。LINE 表示 read token 沒有到期日,但 reference 也標示該欄位不一定存在。缺少時應記錄並維持未讀,不能從 message.id 推算或自行建立 token。

請把 token 與 webhook event ID、message ID、對話負責人、接收時間和處理狀態一起保存。不要將它寫入分析標籤或前端紀錄;即使它不是 channel access token,仍是 LINE webhook 契約提供的動作憑證。

3. 呼叫 Messaging API endpoint

使用符合目前實際處理進度的最新 token:

curl -X POST "https://api.line.me/v2/bot/chat/markAsRead" \
  -H "Authorization: Bearer ${LINE_CHANNEL_ACCESS_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{"markAsReadToken":"30yhdy232..."}'

官方 reference 記載:成功時回傳 200 與空 JSON,read token 無效時回傳 400,rate limit 是每秒 2,000 次。成功呼叫會影響指定訊息及更早訊息,不只是一筆資料庫紀錄。

4. 維持對話內順序與重試界線

依對話處理已讀確認。若訊息 B 晚於訊息 A,確認 B 也會涵蓋 A。全域 worker 若讓同一對話的 token 競爭,就可能在內部工作尚未完成前,讓使用者提早看到已讀。

呼叫 LINE 前先保存「準備確認」狀態,呼叫後再記錄回應。將 400 視為契約或資料錯誤;timeout 或伺服器錯誤則依 LINE 最新的一般重試指引設定上限,不要無限重試。紀錄應能追溯 token 與觸發它的業務事件。

5. 以帳號為單位驗收

使用非正式環境 Official Account 或受控測試對話,在 Chat 開啟時確認:

  1. 使用者訊息建立含 markAsReadToken 的 webhook 事件;
  2. 約定節點前不顯示已讀;
  3. 到達節點後 endpoint 回傳 200
  4. 當前與更早訊息顯示已讀;
  5. token 缺失或無效時不會誤認後續訊息;
  6. 遷移後 Official Account Chat 仍正常運作。

新路徑與真人 Chat 都通過後再移除舊呼叫。10 月是新申請截止,不是現有用戶必須倉促切換的停用日。

UnifyPort 適合放在哪裡

官方 markAsReadToken 流程屬於 LINE Official Account 與 Messaging API。只要 LINE 用戶端必須顯示官方已讀狀態,就應保留這條官方路徑。

UnifyPort 處理另一項需求:連接一般 LINE 帳號後,將支援的入站對話以標準化 message.received 事件送到後端,並與 WhatsApp、Telegram、TikTok、Zalo、X 共用相同 envelope。webhook endpoint 設定 signing_secret 後,會透過 X-Device-TimestampX-Device-Signature 驗證 HMAC-SHA256。

該事件不含 LINE 官方 markAsReadToken,而且 UnifyPort 現行文件明確表示沒有 message-read API。請把 Official Account 已讀 worker 與 UnifyPort 入站 worker 當作兩項獨立能力。

前置選擇可參考不註冊 Official Account 接收 LINE 訊息為什麼 LINE analytics polling 不是入站路由

限制與取捨

需要 Official Account 身分、Chat、官方已讀回條、rich menu、audience 工具或其他 LINE 原生控制時,Messaging API 是正確選擇;新的 markAsRead endpoint 就是官方已讀路徑。

非官方接口不能授予 Official Account 功能、變更 LINE 申請政策,也不能將 Official Account 對話標示為已讀。後端收到訊息也不代表真人已查看。若只需要跨渠道入站佇列,可另行評估;若 LINE 畫面必須出現「已讀」,架構中仍需官方 endpoint。

FAQ

LINE Mark as read API(舊版)會在 2026 年 10 月停用嗎?

沒有這項公告。LINE 會在 10 月底停止接受新申請,已核准帳號可繼續使用;官方正在考慮未來停止舊功能並建議遷移。

新的 LINE markAsRead endpoint 需要申請嗎?

不需要。它使用 channel access token 與 Messaging API webhook 訊息事件中的 markAsReadToken

markAsRead 能與 LINE Official Account Chat 共用嗎?

可以。使用 Messaging API 手動標示已讀時 Chat 必須開啟;若 Chat 關閉,入站訊息會自動標示為已讀。

markAsReadToken 會過期嗎?

LINE 目前表示 read token 沒有到期日,但仍應依營運與資料保留政策保存,並使用對應實際確認節點的 token。

UnifyPort 能將 LINE Official Account 訊息標示為已讀嗎?

不能。UnifyPort 可傳遞連接 LINE 帳號的支援入站訊息,但沒有 message-read API,也不提供官方 markAsReadToken

下一步

將舊呼叫端對照 LINE 官方將訊息標示為已讀指南,並在受控 Official Account 完成六項驗收。若另一項需求是一般帳號入站路由,再查看 UnifyPort 的 LINE 授權指南設計第二條獨立路徑。

來源

以下 LINE 官方來源核對於 2026 年 7 月 25 日: