Чатове и Съобщения (Chats and Messages)
API методи за извличане на метаданни за разговори в ChatHub, управление на статуси и преглед на исторически вериги от съобщения.
URL: https://chatapi.smsbat.com
1. Вземи Всички Чатове
Извличане на списък с чатове с динамично филтриране и пагинация.
Заявка
- Метод: GET
- URL:
/api/chat/chats - Авторизация (Authorization):
Bearer Token(Задължително)
Параметри на заявката (Query Parameters)
| Параметър | Тип | Описание |
|---|---|---|
page | integer | Номер на страница. По подразбиране: 1 |
per_page | integer | Елементи на страница. По подразбиране: 20 |
search | string | Търсене в текст (напр. име, телефон) |
source | integer | Изброяване на източника на чат (напр. 1 за Viber Bot, 2 за Telegram) |
date | datetime | Извлича чатове между две дати (изисква два идентични ключа за параметри в URL адреса). Пример: ?date=2026-01-28&date=2026-01-29 |
tg_user_id | integer | Telegram User ID |
phone | string | Телефонен номер |
status | integer | 0 = Нов, 1 = Отворен, 2 = Изчакващ, 3 = На пауза, 4 = Затворен |
organizationId | integer | Стесняване по организация |
operatorId | integer | Стесняване по назначен оператор |
Отговор (200 OK)
{
"total": 124,
"items": [
{
"id": 123,
"theme": "Support Ticket #491",
"operator": {
"id": 21,
"name": "Джейн",
"photo": "url_to_photo.png"
},
"chatStatus": 1,
"countUnread": 3
}
]
}
2. Промяна на Статуса на Чат
Актуализира присвоения статус на конкретна чат сесия.
Заявка
- Метод: PUT
- URL:
/api/chat/status - Авторизация (Authorization):
Bearer Token - Заглавки (Headers):
Content-Type: application/json
Тяло (Body):
{
"id": 123,
"status": 1
}
Стойности на Статуса (Status Enum Values):
0: Нов (Newly generated)1: Отворен (Активно се обработва от оператор)2: Изчакващ (Очаква отговор от потребителя)3: На пауза (Paused state)4: Затворен (Архивиран)
3. Изтриване на Чат
Изтрива окончателно сървър чрез неговия уникален идентификатор (ID).
Заявка
- Метод: DELETE
- URL:
/api/chat/chats/{id} - Авторизация (Authorization):
Bearer Token
Отговор (200 OK)
Връща HTTP 200, за да потвърди успешното изтриване. Тялото обикновено е празно или строго "OK".
4. Извличане на Съобщения в Чата
Извлича (dumps) всички исторически изпратени и получени съобщения в рамките на определен чат.
Заявка
- Метод: GET
- URL:
/api/chat/chats/{chatId}/messages - Авторизация (Authorization):
Bearer Token
Отговор (200 OK)
[
{
"id": 1,
"chatId": 123,
"message": "Здравейте, как мога да ви помогна?",
"phone": "380936670003",
"author": 0,
"status": 3,
"date": "2025-04-01T09:46:24.687Z",
"operator": {
"id": 21,
"name": "Jane"
},
"messageType": 0
}
]
Автори (Authors):
0: Оператор1: Клиент2: Системен Бот3: Viber Business Account
Типове Съобщения (Message Types):
0: Текст1: Снимка2: Файл
5. Актуализиране на Статуса на Съобщенията
Маркира съобщение (или множество съобщения) вътре в активен чат с нови статуси на доставка.
Заявка
- Метод: PUT
- URL:
/api/chat/messages/status - Авторизация (Authorization):
Bearer Token - Заглавки (Headers):
Content-Type: application/json
Тяло (Body):
{
"status": 3,
"messageIds": [1, 2, 3]
}
(Статус 3 маркира изпратените ID-та на съобщения като “Прочетено” / “Read”)