Перейти к содержанию

DeleteMessage#

Бета-версия

Функциональность находится в стадии бета-тестирования. Функции могут быть изменены, а также могут работать нестабильно.

Test Postman Apidog

Метод удаляет сообщение из чата. Для удаления сообщения следует использовать первоначальный idMessage.

Запрос#

Для удаления сообщения из чата требуется выполнить запрос по адресу:

POST
{{apiUrl}}/waInstance{{idInstance}}/deleteMessage/{{apiTokenInstance}}

Для получения параметров запроса apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.

Параметры запроса#

Параметр Тип Обязательный Описание
chatId string Да Идентификатор корреспондента или группового чата
idMessage string Да ID удаляемого сообщения

Пример тела запроса#

Удаление сообщения в личном чате:

{
    "chatId": "11001234567@c.us",
    "idMessage": "BAE5367237E13A87"
}

Удаление сообщения в групповом чате:

{
    "chatId": "120363043968066561@g.us",
    "idMessage": "BAE5367237E13A87"
}

Ответ#

Поля ответа#

Тело ответа пустое. При успехе ответ сервера 200.

Ошибки DeleteMessage#

Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки

Код HTTP Идентификатор ошибки Описание
400 Bad Request
Validation failed
Ошибка валидации
400 Message by id not found Отсутствует поле message

либо сообщение уже было удалено
500 Internal Server Error
interface conversion: interface {} is bool, not string
Неверно указан тип данных поля chatId

Примеры кода#

import requests

url = "{{apiUrl}}/waInstance{{idInstance}}/deleteMessage/{{apiTokenInstance}}"

payload = {
    "chatId": "120363043968066561@g.us,
    "idMessage": "BAE5F4886F6F2D05",
    }
headers = {
  'Content-Type': 'application/json'
}

response = requests.post(url, json=payload, headers=headers)

print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/deleteMessage/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "chatId": "79123456789@c.us",
    "idMessage": "BAE5F4886F6F2D05"
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/deleteMessage/")
    .append({{apiTokenInstance}});

var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);

var jsonBody = "{\"chatId\": \"79123456789@c.us\",\"idMessage\": \"BAE5F4886F6F2D05\"}";

var requestEntity = new HttpEntity<>(jsonBody, headers);

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.POST, requestEntity, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/deleteMessage/")
    .append({{apiTokenInstance}});

var response = Unirest.post(requestUrl.toString())
    .header("Content-Type", "application/json")
    .body("{\"chatId\": \"79123456789@c.us\",\"idMessage\": \"BAE5F4886F6F2D05\"}")
    .asString();

System.out.println(response);
Sub deleteMessage()
    Dim url As String
    Dim RequestBody As String
    Dim http As Object
    Dim response As String

    ' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
    url = "{{apiUrl}}/waInstance{{idInstance}}/deleteMessage/{{apiTokenInstance}}"

    ' ChatId — the number from which you want to delete the message (@c.us for private chats, @g.us for group chats); idMessage - identifier of the message that needs to be deleted
    RequestBody = "{""chatId"":""70123456789@c.us"",""idMessage"":""BAE5F4886F6F2D05""}"

    Set http = CreateObject("MSXML2.XMLHTTP")

    With http
        .Open "POST", url, False
        .setRequestHeader "Content-Type", "application/json"
        .Send RequestBody
    End With

    response = http.responseText

    Debug.Print response

    ' Outputting the answer to the desired cell
    Range("A1").Value = response

    Set http = Nothing
End Sub