Статус отправленного сообщения#
Входящее уведомление данного типа содержит статус ранее отправленного сообщения: отправлено, доставлено, прочитано и др.
Настройка инстанса
Чтобы получать входящие уведомления о статусах отправленных сообщений, необходимо включить настройки одним из представленных вариантов:
-  
Через личный кабинет включить настройки
Получать уведомления о сообщениях, отправленных с телефона,Получать уведомления о сообщениях, отправленных через APIиПолучать уведомления о статусах отправленных сообщений -  
Через метод SetSettings включить настройки
outgoingMessageWebhook,outgoingAPIMessageWebhookиoutgoingWebhook 
Подробнее о статусах отправленных сообщений в WhatApp читайте в нашей статье
Уведомление#
Формат уведомления#
| Параметр | Тип | Описание | 
|---|---|---|
typeWebhook |  string | Тип входящего уведомления. Для уведомлений данного типа поле принимает значение outgoingMessageStatus |  
chatId |  string | Идентификатор чата. Чат с сообщением по которому получили статус. | 
instanceData |  object | Данные об инстансе | 
timestamp |  integer | Время наступления события в UNIX-формате | 
idMessage |  string | Идентификатор отправленного сообщения или файла. Идентификатор отправленного сообщения возвращается методами: SendMessage, SendFileByUrl, SendFileByUpload, SendLocation, SendContact, SendPoll | 
status |  string | Статус отправленного сообщения или файла. Статус принимает значения: | 
sent - сообщение отправлено |  ||
delivered - сообщение доставлено до получателя |  ||
read - сообщение прочитано/просмотрено/прослушано |  ||
failed - произошла ошибка при отправке сообщения на сервер WhatsApp (данный статус невозможно отключить в настройках SetSettings, необходимо обязательно реализовать обработку данного уведомления) |  ||
noAccount - на номере телефона получателя не зарегистрирован аккаунт WhatsApp (данный статус невозможно отключить в настройках SetSettings, необходимо обязательно реализовать обработку данного уведомления) |  ||
notInGroup - отправитель не является участником группового чата, в который выполняется отправка сообщения |  ||
description |  string | Описание ошибки (рекомендуется сделать информирование оператора об ошибках системы) | 
sendByApi |  boolean | Флаг указывает отправлено сообщение из API или нет, принимает значения: true , false | 
Поля объекта instanceData
| Параметр | Тип | Описание | 
|---|---|---|
idInstance |  integer | Идентификатор инстанса. Размер integer равен int64. Значения лежат в диапазоне от 1 до 10 разрядов | 
wid |  string | Идентификатор аккаунта в формате WhatsApp | 
typeInstance |  string | Тип мессенджера для инстанса | 
Пример тела уведомления со статусом sent#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "79876543210@c.us",
        "instanceData": {
            "idInstance": 1101111111,
            "wid": "79876543210@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727691478,
        "idMessage": "3EB0608D6A2901063D63",
        "status": "sent",
        "sendByApi": true
}
Пример тела уведомления со статусом delivered#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "79876543210@c.us",
        "instanceData": {
            "idInstance": 1101111111,
            "wid": "79876543210@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727698517,
        "idMessage": "3EB0608D6A2901063D63",
        "status": "delivered",
        "sendByApi": true
}
Пример тела уведомления со статусом read#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "79876543210@c.us",
        "instanceData": {
            "idInstance": 1101111111,
            "wid": "79876543210@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727698597,
        "idMessage": "3EB0608D6A2901063D63",
        "status": "read",
        "sendByApi": true
}
Пример тела уведомления при отправке в группу, в которой не состоит отправитель#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "notInGroup",
        "sendByApi": true
}
Пример тела уведомления при отправке сообщения в группу, в которой отправка разрешена только администраторам#
{
        "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363421886430111@g.us",
        "instanceData": {
            "idInstance": 1101111111,
            "wid": "79876543210@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1750023631,
        "idMessage": "BAE51FCEA361DBB7",
        "status": "failed",
        "description": "Error: forbidden",
        "sendByApi": true
}
Пример тела уведомления при отправке сообщения с пустым файлом через метод SendFileByUrl#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "file should not be empty. URL: ...",
        "sendByApi": true
}
Пример тела уведомления при отправке сообщения с файлом, который недоступен по ссылке (SendFileByUrl)#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "upload request was failed with bad status code ([45][0-9]{2})...",
        "sendByApi": true
}
или (могут встречаться оба)
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "request was failed with bad status code ([45][0-9]{2})...",
        "sendByApi": true
}
Пример тела уведомления при отправке сообщения с файлом, размер которого превышает 100 мб. (SendFileByUrl)#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "file size should not exceed 100 megabytes. URL: ...",
        "sendByApi": true
}
Пример тела уведомление при отправке сообщения с файлом при недоступности медиахостов WhatsApp продолжительное время#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "Uploader Error",
        "sendByApi": true
}
или (могут встречаться оба)
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "failed to send message with file",
        "sendByApi": true
}
Пример тела уведомление при отправке сообщения при недоступности хостов WhatsApp продолжительное время#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "Error: Timed Out",
        "sendByApi": true
}
или (могут встречаться оба)
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "120363347693198097@g.us",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727760222,
        "idMessage": "BAE5245994546A06",
        "status": "failed",
        "description": "Error: Connection Closed",
        "sendByApi": true
}
Пример тела уведомления при отсутствии аккаунта WhatsApp на номере#
{
    "typeWebhook": "outgoingMessageStatus",
        "chatId": "79876543210@c.us",
        "instanceData": {
            "idInstance": 1101111111,
            "wid": "79876543210@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1727759586,
        "idMessage": "3EB0608D6A2901063D63",
        "status": "noAccount",
        "sendByApi": true
}
Пример тела уведомления с ошибкой SWE004#
{
    "typeWebhook": "outgoingMessageStatus",
    "chatId": "120363369140947676@g.us",
    "instanceData": {
        "idInstance": 1100000001,
        "wid": "79001234567@c.us",
        "typeInstance": "whatsapp"
    },
    "timestamp": 1700545580,
    "idMessage": "BAE53478EARF25CF",
    "status": "failed",
    "description": "SWE004: the number of participants in the group has been exceeded - 1024",
    "sendByApi": true
}
Пример тела уведомления при редактировании сообщения отправленного более 15 минут назад#
{
    "typeWebhook": "outgoingMessageStatus",
    "chatId": "79001234567@c.us",
    "instanceData": {
        "idInstance": 1101000001,
        "wid": "79001234567@c.us",
        "typeInstance": "whatsapp"
    },
    "timestamp": 1739426932,
    "idMessage": "BAE56687379D581D",
    "status": "failed",
    "description": "15 minute editing time gap has been expired",
    "sendByApi": true
}