Contacts
Получить контакт
Обычный отсутствующий контакт возвращает 404 contact_not_found. Если не существует целевая беседа, возвращается 422 contact_not_found, numeric_code 35000 и сообщение Conversation not found.
https://api.unifyport.ai/v1/accounts/{account_id}/contacts/infoПеред вызовом
Используйте X-Api-Key нужного рабочего пространства на сервере. Перед запуском замените все заполнители.
Откуда взять параметры
- account_id
- Возьмите data.id из создания или запроса аккаунта. Идентификатор относится к рабочему пространству X-Api-Key. Получить аккаунт
- contact_id
- Идентификатор контакта у провайдера; передавайте как непрозрачную строку. whatsapp и whatsapp-protocol используют LID (xxx@lid). whatsapp-protocol может вернуть успех даже при отсутствии полей профиля контакта; ориентируйтесь на фактически возвращённые поля.
WhatsApp Protocol: Для сведений о контакте нужен существующий LID (xxx@lid). Используйте data.sender.id или data.conversation.id только с окончанием @lid. Protocol не предоставляет список контактов, а этот API не вычисляет LID по номеру телефона. Без LID выполнить запрос нельзя. Успешный ответ может не содержать часть профиля.
Параметры запроса
Заголовки
X-Api-KeyAPI-ключ рабочей области. Рабочая область определяется по этому заголовку.
Параметры пути
account_idИдентификатор для маршрута раздела contacts.
Параметры запроса
contact_idИдентификатор контакта у провайдера; передавайте как непрозрачную строку. whatsapp и whatsapp-protocol используют LID (xxx@lid). whatsapp-protocol может вернуть успех даже при отсутствии полей профиля контакта; ориентируйтесь на фактически возвращённые поля.
Тело запроса
Этот эндпоинт не требует JSON-тела запроса.
Как понять результат
Используйте только возвращённые поля профиля. Идентификаторы непрозрачны; отсутствие поля не означает отсутствие контакта.
Ответ 200 OK
{
"request_id": "<REQUEST_ID>",
"data": {
"id": "user_example",
"conversation_id": "peer_example",
"display_name": "Alice",
"avatar_url": "",
"provider_user_id": "user_example",
"extra": {
"phone": "8600000000000"
}
}
}
Тело ответа
idИдентификатор контакта.
conversation_idИдентификатор беседы для этого контакта; используйте его для отправки сообщений или поиска чата.
display_nameОтображаемое имя контакта или пустая строка, если оно отсутствует.
avatar_urlURL аватара контакта или пустая строка, если он отсутствует.
provider_user_idИдентификатор пользователя на стороне провайдера для контакта.
is_blockedЗаблокирован ли контакт подключённым аккаунтом.
extraobjectДополнительные поля, специфичные для провайдера, например phone.
extraДополнительные поля, специфичные для провайдера, например phone.
phoneWhatsApp phone JID 中解析出的纯手机号。
first_name当前账号通讯录中保存的联系人简称或名字部分。
full_name当前账号通讯录中保存的完整联系人名称。
push_name联系人自行在 WhatsApp 设置的个人名称。
business_nameWhatsApp Business 账号的商业或认证名称。
redacted_phoneProvider 仅返回部分号码时的遮蔽手机号。
Ответы
200200 OK
Запрос выполнен. См. пример тела ответа.
400Bad Request
Тело запроса, путь или параметры некорректны.
401Unauthorized
Заголовок X-Api-Key отсутствует или недействителен.
404Not Found
Запрошенный ресурс провайдера не найден.
409Conflict
Запрошенная операция конфликтует с существующим аккаунтом провайдера или ресурсом.
422Unprocessable Entity
Запрос корректен, но целевую беседу провайдера разрешить не удалось.
500Internal Server Error
Сервис столкнулся с неожиданной ошибкой.
501Not Implemented
Выбранный провайдер не реализует эту операцию.
502Bad Gateway
Адаптер или вышестоящий провайдер не смог завершить операцию.
При ошибке запроса
Проверьте HTTP и error.code/numeric_code, сохраните request_id. Исправьте параметры, завершите авторизацию или проверьте runtime. До повторной отправки или записи выясните результат предыдущей попытки. Справочник ошибок
- invalid_request · 10000 · 400
- Проверьте обязательные поля, форматы и условия канала, затем исправьте запрос.
- invalid_api_key · 11001 · 401
- Проверьте X-Api-Key и активность рабочего пространства.