Контакты через API
Через API можно получать список контактов и добавлять или обновлять их программно — например, синхронизировать свою базу клиентов по вебхукам.
POST /v1/contacts — создать или обновить контакты
Добавляет новые контакты и обновляет имена существующих в указанной линии связи.
URL
POST https://api.wazzabee.com/api-gateway/v1/contacts
Заголовки
Authorization: Bearer ВАШ_API_КЛЮЧ
Content-Type: application/json
Тело запроса — один контакт
{
"channel_id": "UUID линии связи",
"phone": "+996550202160",
"name": "Диана"
}
Тело запроса — список (до 1000 за раз)
{
"channel_id": "UUID линии связи",
"contacts": [
{ "phone": "+996550202160", "name": "Диана" },
{ "phone": "77011234567", "name": "Иван" }
]
}
Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
channel_id | string (UUID) | ✅ Да | ID линии связи. Получить через GET /v1/channels |
phone | string | ✅ Да | Номер в любом формате — лишние символы (+, пробелы, скобки) отбрасываются |
name | string | Нет | Имя контакта. Если не указать: у нового контакта именем станет номер, у существующего имя не изменится |
Поведение
- Контакта с таким номером в линии нет — он создаётся.
- Контакт есть и передано
name— обновляется только имя. Заметки, аватар и прочие данные не затрагиваются. - Номер нормализуется до цифр; повторы номера в одном запросе объединяются.
Ответ
{ "success": true, "added": 2, "updated": 0, "skipped": 0 }
🔒 Изоляция данных: контакты добавляются только в вашу линию связи. Через свой API-ключ невозможно записать или увидеть контакты другого аккаунта.
Пример (curl)
curl -X POST https://api.wazzabee.com/api-gateway/v1/contacts \
-H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
-H "Content-Type: application/json" \
-d '{"channel_id":"UUID","phone":"+996550202160","name":"Диана"}'
GET /v1/contacts — список контактов
Возвращает контакты с пагинацией и поиском.
GET https://api.wazzabee.com/api-gateway/v1/contacts?limit=50&offset=0&search=Диана
| Параметр | Описание |
|---|---|
limit | Сколько вернуть (1–200, по умолчанию 50) |
offset | Смещение для пагинации |
channel_id | Необязательно — только контакты этой линии |
search | Поиск по имени или номеру |
Ответ
{
"success": true,
"contacts": [
{ "id": "...", "name": "Диана", "phone": "996550202160", "channelId": "...", "channelType": "whatsapp_qr" }
],
"total": 120
}