跳到內容

聯絡人

client.contacts 管理聯絡人 — 透過您的頻道進行通訊的潛在客戶、客戶或使用者。每個聯絡人可以有連結的對話、評論、檔案和活動歷史。


結構定義

Contact

欄位類型說明
object_namestring?物件類型識別碼
idstring唯一聯絡人 ID
organization_idstring所屬組織
display_namestring?聯絡人顯示名稱
emailstring?電子郵件地址
phone_numberstring?電話號碼
avatar_urlstring?個人資料圖片 URL
created_atstringISO 8601 建立時間戳
updated_atstringISO 8601 更新時間戳

UpdateContactInput

欄位類型必填說明
namestring更新顯示名稱
emailstring更新電子郵件地址
phonestring更新電話號碼

ContactComment

欄位類型說明
_idstring唯一評論 ID
textstring?評論內容
created_atstring?ISO 8601 建立時間戳

ContactFile

欄位類型說明
_idstring唯一檔案 ID
namestring?檔案名稱
urlstring?下載 URL
sizenumber?檔案大小(位元組)

方法

方法TypeScriptPython說明
列出listlist分頁的聯絡人列表
取得getget依 ID 取得聯絡人
更新updateupdate更新聯絡人欄位
搜尋searchsearch跨聯絡人全文搜尋
匯出 CSVexportCsvexport_csv以 CSV 下載所有聯絡人
取得對話getConversationsget_conversations列出聯絡人的對話
取得評論getCommentsget_comments列出聯絡人的內部評論
取得檔案getFilesget_files列出附加到聯絡人的檔案
取得活動紀錄getActivitiesget_activities對話活動日誌
上傳頭像uploadAvatarupload_contacts上傳檔案到聯絡人(頭像 / 檔案匯入)
列出通知listNotificationslist_notifications列出目前使用者的通知
將通知標為已讀markNotificationsReadmark_notifications_read將通知標記為已讀
關閉通知dismissNotificationdismiss_notification關閉單一通知
關閉所有通知dismissAllNotificationsdismiss_all_notifications清除所有通知

list / list

const page = await client.contacts.list({ limit: 50, skip: 0 });
for (const contact of page.data) {
console.log(contact.id, contact.display_name, contact.email);
}

const results = await client.contacts.search({
q: "alice@example.com",
limit: 10,
});

update / update

const contact = await client.contacts.update("contact_id", {
name: "Alice Smith",
email: "alice@example.com",
phone: "+84912345678",
});

getConversations / get_conversations

const conversations = await client.contacts.getConversations("contact_id", {
channelTypes: "whatsapp,web",
});

getComments / get_comments

const comments = await client.contacts.getComments("contact_id", {
limit: 20,
skip: 0,
});

getActivities / get_activities

傳回與此聯絡人關聯的對話活動日誌。

const activities = await client.contacts.getActivities("conversation_id");

listNotifications / list_notifications

const page = await client.contacts.listNotifications({ limit: 20, skip: 0 });
for (const n of page.data) {
console.log(n);
}

markNotificationsRead / mark_notifications_read

await client.contacts.markNotificationsRead(["notif_id_1", "notif_id_2"]);

uploadAvatar / upload_contacts

const formData = new FormData();
formData.append("file", avatarBlob, "avatar.png");
const result = await client.contacts.uploadAvatar(formData);
console.log(result.url);