跳到內容

認證

群組GM API 使用 Bearer Token 進行認證。

在每個 API 請求的 Header 中加入:

Authorization: Bearer YOUR_API_KEY
Terminal window
curl -X GET https://api.gm.kamigo.tw/api/me \
-H "Authorization: Bearer gm_xxxxxxxxxxxx"
fetch('https://api.gm.kamigo.tw/api/me', {
headers: {
'Authorization': 'Bearer gm_xxxxxxxxxxxx'
}
})
requests.get(
'https://api.gm.kamigo.tw/api/me',
headers={'Authorization': 'Bearer gm_xxxxxxxxxxxx'}
)
gm_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  • 前綴:gm_
  • 長度:36 字元(含前綴)
  • 字元:小寫英文與數字

每把 API 金鑰可設定不同的權限:

權限說明
read:messages讀取群組訊息
read:members讀取成員資訊
read:media讀取媒體檔案
write:assistant修改自動回覆設定

API 會根據金鑰權限決定可存取的資源:

GET /api/channels/C123/backup/messages

需要 read:messages 權限,否則回傳:

{
"error": "Insufficient permissions"
}
// ❌ 錯誤:金鑰會被看到
const API_KEY = 'gm_xxxxxxxxxxxx';
fetch('/api/me', { headers: { Authorization: `Bearer ${API_KEY}` }});
// ✅ 正確:透過你的後端代理
fetch('/your-backend/api/me');
.env
GROUPGM_API_KEY=gm_xxxxxxxxxxxx
Node.js
const apiKey = process.env.GROUPGM_API_KEY;
# Python
import os
api_key = os.environ.get('GROUPGM_API_KEY')

只授予必要的權限:

只讀取訊息 → read:messages
管理設定 → write:assistant

建議每 90 天更換金鑰。

金鑰無效或缺失:

{
"error": "Invalid or missing API key"
}

處理方式:

  1. 確認金鑰正確
  2. 確認 Header 格式正確
  3. 確認金鑰未被刪除

權限不足:

{
"error": "Insufficient permissions"
}

處理方式:

  1. 確認金鑰有需要的權限
  2. 確認你是該群組的成員
  3. 某些功能需要特定方案

如果你開發的是 Web 應用,可以使用 OAuth 流程讓使用者登入:

GET /auth/login

重新導向至 LINE Login,完成後回到你的應用。