API合作
透過使用Chat&Messenger API,您可以輕鬆地與外部系統和程式連結。
API 整合支援以下處理。
- 與內部系統連結,將業務資料通知聊天室
- 偵測系統錯誤並通知相關方
- 來自內部組件的網路會議鏈接
- 獲取日程和會議室預訂資訊並與其他系統鏈接
API令牌和API介面
從管理畫面取得 API Token
進行API整合時,請先取得API Token。
請將獲得的 apiToken / serverURL 傳遞給 JavaScript /curl,如下面「API 介面」所述。

API介面
API 介面可以與 JavaScript、curl 命令列或任何 HTTP 存取程式一起使用。以下兩個範例均可檢索 JSON 格式的會議室註冊資訊。
在不應用常規 SSL 的環境中,serverURL 將是 HTTP 8080 連接埠。
JavaScript
let config = {
"apiToken": "QIQVOSvRJHrQElDwj20x******",
"serverURL": "https://*****************"
}
let client = new CAMAPIClient(config);
let response = await client.getConferenceRooms();
捲曲命令列
curl -H "x-cam-apiToken:token******" ${serverURL}/getConferenceRooms
任何HTTP訪問程序
任何 HTTP 存取程式均可使用。 API 執行方式如下: 內容類型
的 應用程式/x-www-form-urlencoded
然後透過POST發送。
API 範例螢幕
有一個範例 URL,您可以在其中輕鬆嘗試 API 執行。如果您想使用它進行測試,請透過查詢表與我們聯絡。

訊息 API
傳訊息
發送一個訊息。
樣本
透過在 Messenger 中指定使用者 ID 傳送
let response = await getAPIClient().sendMessage(
"messenger", // messenger を指定したダイレクトメッセージを指定
"Hello!", // 送信するメッセージ
false, // 封書は off
["user1@xxx.com", "user2@xxx.com"] // 宛先 Email アドレス
);
curl -H "x-cam-apiToken:token******" -d message="{\"panelName\":\"messenger\",\"message\":\"Hello\",\"isOpened\":false,\"generalPurposes\":{\"users\":\"user1@xxx.com,user2@xxx.com\"}}" ${serverURL}/sendMessage
指定聊天室並發送
let response = await getAPIClient().sendMessage(
"ルーム名",
"Hello!",
false,
["user1@xxx.com", "user2@xxx.com"] // メンションとして Email アドレス指定
);
curl -H "x-cam-apiToken:token******" -d message="{\"panelName\":\"ルーム名\",\"message\":\"Hello\",\"isOpened\":false,\"generalPurposes\":{\"users\":\"user1@xxx.com,user2@xxx.com\"}}" ${serverURL}/sendMessage
爭論
傳送 |
|
使用者 |
|
資訊 |
|
海豹 |
|
傳送訊息
從 json 檔案批次發送訊息。
請以字元編碼UTF8儲存json檔案。
樣本
curl -H "x-cam-apiToken:token******" -d @messages.json ${serverURL}/sendMessages
messages=[
{"message":"こんにちは 1","property":{"users":"user1@test.com,user2@test.com"}},
{"message":"こんにちは 2","property":{"users":"user1@test.com,user2@test.com"}},
{"message":"こんにちは 3","property":{"users":"user1@test.com,user2@test.com"}},
{"message":"こんにちは 4","property":{"users":"user1@test.com,user2@test.com"}},
]
messages=[
{"send": "test", "message":"テスト 1"}
]
呼叫 API
快速网络会议 建立一個網址。
建立快速呼叫
樣本
let response = await getAPIClient().createQuickCall(
1624368868714, // クイック会議の期限(UnixTimeミリ)
"password!", // クイック会議のパスワードを指定
);
爭論
過期日期 | 指定快速會議的截止日期(UnixTime 毫米) |
標題 | 設定會議畫面上顯示的標題 * 如果為空白,則不會顯示。 |
密碼 | 指定快速會議密碼 * 如果留空,將建立沒有密碼的會議 URL。 |
回覆
席德 | 網路會議 ID |
網址 | 網路會議網址 |
PresenterPass | 如果您建立唯讀會議,演示者必須輸入密碼。 |
自動登入
若要自動登入 createQuickCall 產生的會議 URL,請透過在 URL 參數中連接使用者名稱和密碼來存取它,如下所示:
https://app.chat-messenger.com/share/{網路會議ID}?使用者名稱=Taro&密碼=000
獲取通話統計信息
返回網路會議的當前狀態,包括參與者的數量。
樣本
let response = await getAPIClient().getCallStats(
8sQYFO2sPYHb7xSsibpVCKaqrFmTpCureVqKvwKgSZJs, // Web会議のID
);
爭論
房間名稱 | 指定網路會議 ID 或快速會議的 SID |
回覆
房間名稱 | 網路會議 ID |
標題 | 網路會議主題 |
建立日期 | 建立日期 |
過期日期 | 到期日期 |
參與者 | 目前參與人數 |
進行中 | 如果會議正在進行,則為 true,否則為 false |
使用者 API
用戶 API 僅提供 curl 命令。您還需要管理員權限才能運行它。
匯出用戶
使用者資訊將以CSV格式下載到路徑指定的位置。
樣本
curl -H "x-cam-apiToken:token******" -d "path=exportUsers.csv" ${serverURL}/exportUsers
更新用戶CSV
從 CSV 檔案批次更新使用者資訊。 ※ 參考 CSV 格式
樣本
curl -H "x-cam-apiToken:token******" -F "file=@updateUsers.csv" ${serverURL}/updateUsersCSV
聊天室 API
更新聊天室
建立/更新聊天室
樣本
let chatRoom = {
"id":"1564831284702237059",
"name":"秘密会議"
"createUserId":"11u1pu9d32p8vuvjoZdd",
"adminUserId":"11u1pu9d32p8vuvjoZdd",
"isPublic":false,
"memberUids":{
"11u1pu9d32p8vuvjoZdd":true,
"1lmn7hoh3s1ja26fsazw":true,
"hhx10sfdv1jyou4la1ny":true,
"3400w9rfvs504c35dt99":true,
"309d32p8vuvjo5euuuwx":true
},
}
let response = await getAPIClient().updateChatRoom(chatRoom);
let errors = response['errors'];
if (errors) {
console.log(errors);
return;
}
console.log(response["chatRoom"]);
爭論
聊天室 |
|
規劃 API
獲取會議主持人
取得會議室主列表。
樣本
let response = await getAPIClient().getConferenceMaster();
let errors = response['errors'];
if (errors) {
console.log(errors);
return;
}
console.log(response["conferenceRooms"]);
爭論
沒有任何
取得會議室狀態
取得會議室預訂狀態列表
樣本
let response = await getAPIClient().getConferenceRoomStatus("201908");
let errors = response['errors'];
if (errors) {
console.log(errors);
return;
}
console.log(response["conferenceRoomStatus"]);
爭論
年月日 |
|
API錯誤偵測
請判斷API錯誤如下:
200 以外的 HTTP 狀態碼
任何除 200 之外的 HTTP 狀態都毫無例外地是錯誤。
HTTP 狀態為 200,但伺服器出現錯誤
如果 API 令牌無效或目標資料不存在,則 HTTP 狀態本身將傳回 200,並且可以透過回應中的狀態 520 來確定錯誤。此外,錯誤將包含錯誤原因的代碼和訊息的陣列。
{"status":520, "errors":[{"code":"805","message":"APIトークンが正しくありません"}]}
程式碼意義及同時回傳的訊息詳情如下:
程式碼 | 意義 | 資訊 |
---|---|---|
400 | 錯誤的客戶端請求 | 此請求無效。 |
405 | 不存在的群體 | – |
406 | 我無法更改群組 | – |
451 | 用戶未註冊 | 該用戶尚未註冊,請先註冊。 *如果用戶可以自行註冊 |
452 | 用戶未註冊 | 該用戶尚未註冊。 |
490 | 已超出登入嘗試次數 | 您已達到密碼嘗試的最大次數,無法登入。請等待一段時間後重試。 |
491 | 請求過多 | – |
500 | 意外的伺服器相關錯誤 | – |
503 | 暫停服務 | – |
800 | 此功能僅供管理員使用,無法使用。 | 此功能僅供管理員使用。 |
802 | 這是一個僅限 API 的功能,無法使用。 | 此操作僅可透過 API 進行。 |
805 | API 令牌無效 | API 令牌無效。 |