Этот метод возвращает список рассылок, созданных в WAMM.chat для канала связи, к которому привязан API-токен. В ответе — название рассылки, даты создания и отправки, статус выполнения, сводная статистика по получателям (всего, отправлено, доставлено, прочитано, уникальные, ответы), а также создатель и ответственный. Метод удобен для мониторинга массовых отправок из CRM или отчётов без входа в личный кабинет.

За один запрос возвращается до 250 последних рассылок этого канала; активные (идущие) показываются первыми. Чтобы отфильтровать рассылки по автору, передайте user_id — идентификаторы операторов можно получить через список пользователей. Отправка отдельных сообщений в рамках рассылки выполняется через отправку сообщений; статусы доставки отдельных сообщений — через получение статуса сообщения или WebHook.

Рассылки создаются и запускаются в интерфейсе WAMM.chat (раздел «Рассылки»); API предназначен для чтения списка и аналитики, а не для создания новой рассылки.


Поддерживаемые мессенджеры

WhatsApp, MAX Personal, Telegram Personal, Telegram Bot, MAX Bot — любой канал, для которого выдан действующий API-токен. В списке будут только рассылки этого канала.


Пример запроса:

GET https://wamm.chat/api2/rassilki/{token}/

с фильтром по автору (необязательно):

GET https://wamm.chat/api2/rassilki/{token}/?user_id=100

Параметр user_id можно передать также через POST.


Параметры запроса
ПараметрТипОбязательныйОписание
tokenstringДаAPI-токен канала из раздела Настройки > Управление > API.
user_idintegerНетID пользователя WAMM.chat — вернуть только рассылки, созданные этим оператором. Без параметра — все рассылки канала (в пределах лимита 250).

Ответ при успехе
{
    "status": "ok",
    "data": [
        {
            "id": 15234,
            "org_id": 100,
            "api_id": 205,
            "from_phone": "79001234567",
            "msg_title": "Акция март",
            "ras_tag": "акция",
            "dt_ins": "2026-05-20 14:30:00",
            "dt_start": "2026-05-20 15:00:00",
            "dt_step": 5,
            "dt_finish": "2026-05-20 18:45:00",
            "state": 2,
            "state_name": "finished",
            "msg_col": 500,
            "msg_col_sent": 498,
            "msg_col_delivered": 480,
            "msg_col_view": 320,
            "msg_col_unique": 500,
            "msg_col_answers": 45,
            "user_id": 100,
            "user_name": "Иван Петров",
            "user_id_responsible": 110,
            "user_name_responsible": "Мария Сидорова"
        }
    ]
}

Описание полей ответа
ПолеОписание
statusПри успехе всегда ok (в отличие от методов с полем err).
dataМассив рассылок; при отсутствии рассылок — пустой массив [].
idИдентификатор рассылки в WAMM.chat.
api_idНомер канала связи, через который выполнялась рассылка.
from_phoneНомер или идентификатор отправителя канала.
msg_titleНазвание рассылки.
ras_tagТег, присваиваемый чатам при рассылке (если задан).
dt_insДата и время создания рассылки.
dt_startДата и время начала отправки.
dt_finishДата и время завершения (если рассылка завершена).
dt_stepИнтервал между сообщениями в рассылке (секунды), если задан.
stateЧисловой статус: 0 — не запущена, 1 — идёт отправка, 2 — завершена.
state_nameТекстовый статус: idle, running, finished.
msg_colВсего получателей в рассылке.
msg_col_sentСообщений отправлено.
msg_col_deliveredДоставлено (статусы delivered, viewed, read и др.).
msg_col_viewПрочитано (viewed, read).
msg_col_uniqueУникальные получатели.
msg_col_answersКоличество ответов от клиентов.
user_idID пользователя, создавшего рассылку.
user_nameИмя создателя.
user_id_responsibleID ответственного за рассылку (если назначен).
user_name_responsibleИмя ответственного.

Возможные ошибки
Код ошибкиОписание
token failТокен отсутствует, неверный или канал в архиве.

Если рассылок для канала нет, ответ будет {"status":"ok","data":[]} — это не ошибка.


Примеры использования
function getRassilkiList($token, $userId = null) {
    $url = "https://wamm.chat/api2/rassilki/" . rawurlencode($token) . "/";
    if ($userId !== null && (int)$userId > 0) {
        $url .= "?user_id=" . (int)$userId;
    }

    $response = file_get_contents($url);
    if ($response === false) {
        echo "Не удалось выполнить запрос к серверу";
        return null;
    }

    $json = json_decode($response, true);
    if (!is_array($json) || !isset($json['status'])) {
        echo "Не удалось обработать ответ от сервера";
        return null;
    }

    if ($json['status'] === 'ok' && isset($json['data'])) {
        return $json['data'];
    }

    if (isset($json['err'])) {
        echo "Ошибка: " . $json['err'];
    } else {
        echo "Ошибка: неизвестный ответ";
    }
    return null;
}

$token = "YOUR_TOKEN";
$list = getRassilkiList($token);

if ($list !== null) {
    foreach ($list as $row) {
        echo "ID: {$row['id']}, «{$row['msg_title']}», статус: {$row['state_name']}, "
           . "получателей: {$row['msg_col']}, отправлено: {$row['msg_col_sent']}\n";
    }
}