Данный метод возвращает подробную информацию о контакте или чате из базы WAMM.chat: имя, email, заметки, теги, ответственного, настройки чата и дополнительные поля CRM. Удобен для синхронизации с внешней CRM, проверки данных перед отправкой сообщений и для методов управления чатом — добавление контакта, теги, ответственный. Контакт должен уже существовать в WAMM.chat (например, после переписки или добавления через contact_to).
Для Telegram Personal и MAX Personal в параметре phone можно передать номер телефона, внутренний ID чата или никнейм — поиск выполняется и по полю phone, и по id контакта. Для остальных каналов указывается идентификатор контакта в формате канала (обычно номер в международном формате).
Поддерживаемые мессенджеры
Метод доступен для каналов с API-токеном: WhatsApp, MAX Personal, Telegram Personal, Telegram Bot. Данные возвращаются в рамках организации и канала, к которому привязан токен запроса.
Пример запроса:
GET https://wamm.chat/api2/contact_get/{token}/?phone={phone} или
GET https://wamm.chat/api2/contact_get/{token}/{phone} Параметры запроса
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| token | string | Да | API-токен канала из раздела «Настройки > Управление > API» |
| phone | string | Да | Идентификатор контакта: номер в международном формате (например, 79001234567). Для Telegram Personal и MAX Personal — также внутренний ID чата или никнейм. Допускается в URL или как GET-параметр ?phone= |
Ответ при успехе
{
"err": 0,
"data": {
"chat_id": 12345,
"api_id": 100,
"tip": "user",
"phone": "79001234567",
"phone_real": "",
"name": "Иван Петров",
"email": "client@example.com",
"web": "https://example.com",
"avatar": "https://wamm.chat/i/avatar/example.jpg",
"notes": "Заметка к контакту",
"user_id": 12,
"tags": "VIP; Повторный",
"chat_banned": 0,
"chat_mute": 0,
"chat_favorite": 1,
"fields": "Город: Москва; Источник: сайт",
"fields_ext": [
{
"id": 5,
"name": "Город",
"value": "Москва"
},
{
"id": 8,
"name": "Источник",
"value": "сайт"
}
]
}
} Описание полей ответа
| Поле | Описание |
|---|---|
| chat_id | Внутренний идентификатор чата (контакта) в WAMM.chat |
| api_id | Номер канала связи |
| tip | Тип контакта: user — пользователь, group — группа |
| phone | Идентификатор контакта в канале. Для Telegram и MAX Personal часто это ID чата |
| phone_real | Телефон или никнейм, если известен (для Telegram и MAX, когда phone — ID чата) |
| name | Имя контакта или название чата |
| Email контакта | |
| web | URL контакта |
| avatar | URL аватара |
| notes | Заметка к контакту |
| user_id | ID ответственного пользователя (пусто, если не назначен). Список пользователей — метод user_list |
| tags | Теги чата через точку с запятой и пробел (; ), например: VIP; Повторный |
| chat_banned | Блокировка чата: 0 — нет, 1 — заблокирован |
| chat_mute | Уведомления: 0 — включены, 1 — отключены |
| chat_favorite | Закрепление вверху списка: 0 — нет, 1 — закреплён |
| fields | Дополнительные поля одной строкой (имя: значение; …). Пустая строка, если полей нет |
| fields_ext | Массив дополнительных полей: id, name, value. Пустой массив, если полей нет |
Возможные ошибки
| Код ошибки | Описание |
|---|---|
| token fail | Токен недействителен, отсутствует или канал не в статусе оплаты active |
| phone fail | Не указан идентификатор контакта или его длина вне допустимого диапазона (6–50 символов после нормализации) |
| not found | Контакт не найден в базе WAMM.chat для данного канала |
Примеры использования
function getContactInfo($token, $phone) {
$url = 'https://wamm.chat/api2/contact_get/' . rawurlencode($token) . '/?phone=' . rawurlencode($phone);
$response = file_get_contents($url);
if ($response === false) {
echo 'Не удалось выполнить запрос к серверу';
return null;
}
$json = json_decode($response, true);
if (!isset($json['err'])) {
echo 'Не удалось обработать ответ от сервера';
return null;
}
if ($json['err'] === 0 && isset($json['data'])) {
return $json['data'];
}
echo 'Ошибка: ' . $json['err'];
return null;
}
$token = 'YOUR_TOKEN';
$phone = '79001234567';
$contact = getContactInfo($token, $phone);
if ($contact) {
echo 'Контакт: ' . $contact['name'] . ', теги: ' . $contact['tags'];
}