聯絡人
列出聯絡人
即時列出聯絡人。limit 範圍 1..100,預設 50;cursor 無效或過期時由各渠道分別處理。q 匹配 display_name / phone / username,updated_since 用於渠道支援的增量同步。
https://api.unifyport.ai/v1/accounts/{account_id}/contacts呼叫前準備
在伺服器端使用資源所屬工作區的 X-Api-Key,執行範例前替換所有預留位置。
參數從哪裡取得
- account_id
- 從建立或查詢帳號的回應取得 data.id。帳號屬於 X-Api-Key 對應的工作區。 取得帳號
請求參數
請求標頭
X-Api-Key工作區 API Key,工作區會由此標頭解析得到。
路徑參數
account_id用於該 contacts 路由的識別字。
查詢參數
cursor前一回應的 next_cursor。省略或留空從第一頁開始;無效或過期游標的處理依渠道而異。
limit單頁數量範圍 1..100;預設值見各端點說明。
minimum: 1 · maximum: 100
q比對 display_name、phone 或 username 的搜尋篩選條件。
updated_sinceRFC3339 時間戳記;僅回傳自該時間點起有更新的聯絡人,於渠道支援時用於增量同步。
format: date-time
請求內容
此介面無需 JSON 請求內容。
如何理解結果
依文件解讀回應欄位與 HTTP 狀態。204 成功沒有回應本文,排查時使用 X-Request-Id。下一步請參閱相關操作。
回應 200 OK
{
"request_id": "<REQUEST_ID>",
"data": {
"items": [
{
"id": "user_example",
"conversation_id": "peer_example",
"display_name": "Alice",
"avatar_url": "",
"provider_user_id": "user_example",
"extra": {
"phone": "8600000000000"
}
}
],
"next_cursor": "",
"has_more": false
}
}
回應內容
id聯絡人識別字。
conversation_id此聯絡人的對話識別字;可用於傳送訊息或定位該對話。
display_name聯絡人顯示名稱;若缺少則為空字串。
avatar_url聯絡人頭像 URL;若缺少則為空字串。
provider_user_id此聯絡人於渠道側的使用者識別字。
is_blocked此聯絡人是否已被連接帳號封鎖。
extraobject渠道專屬的額外欄位,例如 phone。
extra渠道專屬的額外欄位,例如 phone。
phoneWhatsApp phone JID 中解析出的纯手机号。
first_name当前账号通讯录中保存的联系人简称或名字部分。
full_name当前账号通讯录中保存的完整联系人名称。
push_name联系人自行在 WhatsApp 设置的个人名称。
business_nameWhatsApp Business 账号的商业或认证名称。
redacted_phoneProvider 仅返回部分号码时的遮蔽手机号。
next_cursor指向下一頁的不透明游標。請以 cursor 原樣回傳;空字串表示已無更多分頁。
has_more當本頁之外仍有更多結果時為 true。
回應
200200 OK
請求成功,回應內容範例如上。
400請求錯誤
請求內容、路徑或參數無效。
401未授權
X-Api-Key 請求標頭缺少或無效。
409衝突
目前操作與既有的渠道帳號或資源衝突。
500伺服器錯誤
服務遇到了未預期的錯誤。
501渠道尚未實作
所選渠道尚未實作此操作。
502上游閘道錯誤
渠道轉接器或上游渠道未能完成此操作。
失敗後如何處理
檢查 HTTP 狀態和 error.code/numeric_code,保留 request_id。依原因修正參數、繼續授權或檢查狀態。重試傳送及寫入前確認上次結果,避免重複操作。 錯誤碼參考
- invalid_request · 10000 · 400
- 檢查必填欄位、格式與渠道條件,修正請求後再呼叫。
- invalid_api_key · 11001 · 401
- 檢查 X-Api-Key 與工作區是否有效。