Help Center Чатове и Съобщения (Chats and Messages)

Чатове и Съобщения (Chats and Messages)

API методи за извличане на метаданни за разговори в ChatHub, управление на статуси и преглед на исторически вериги от съобщения.

URL: https://chatapi.smsbat.com


1. Вземи Всички Чатове

Извличане на списък с чатове с динамично филтриране и пагинация.

Заявка

  • Метод: GET
  • URL: /api/chat/chats
  • Авторизация (Authorization): Bearer Token (Задължително)

Параметри на заявката (Query Parameters)

ПараметърТипОписание
pageintegerНомер на страница. По подразбиране: 1
per_pageintegerЕлементи на страница. По подразбиране: 20
searchstringТърсене в текст (напр. име, телефон)
sourceintegerИзброяване на източника на чат (напр. 1 за Viber Bot, 2 за Telegram)
datedatetimeИзвлича чатове между две дати (изисква два идентични ключа за параметри в URL адреса). Пример: ?date=2026-01-28&date=2026-01-29
tg_user_idintegerTelegram User ID
phonestringТелефонен номер
statusinteger0 = Нов, 1 = Отворен, 2 = Изчакващ, 3 = На пауза, 4 = Затворен
organizationIdintegerСтесняване по организация
operatorIdintegerСтесняване по назначен оператор

Отговор (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”)