DeleteNotification#
Метод предназначен для удаления входящего уведомления из очереди уведомлений. Чтобы указать, какое уведомление следует удалить, используйте параметр receiptId
. После получения и обработки входящего уведомления требуется удалить уведомление из очереди. Для этого требуется выполнить данный метод. После вызова метода уведомление будет считаться принятым и обработанным и будет безвозвратно удалено из очереди. Таким образом следующий вызов метода ReceiveNotification вернет следующее уведомление из очереди в порядке поступления уведомлений в очередь.
Срок хранения входящих уведомлений в очереди составляет 24 часа.
Уведомления отдаются из очереди в порядке FIFO
Запрос#
Для удаления входящего уведомления из очереди требуется выполнить запрос по адресу:
{{apiUrl}}/waInstance{{idInstance}}/deleteNotification/{{apiTokenInstance}}/{{receiptId}}
Обратите внимание, что требуется использовать запрос вида
DELETE
Для получения параметров запроса apiUrl
, idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Параметры запроса#
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
receiptId | integer | Да | Идентификатор доставки для удаления входящего уведомления, полученный методом ReceiveNotification |
Ответ#
Поля ответа#
Поле | Тип | Описание |
---|---|---|
result | boolean | Результат удаления входящего уведомления: true - входящее уведомление успешно удалено из очереди; false - уведомление не удалено - возможно, когда уведомление было удалено ранее, или receiptId не соответствует ранее полученному значению методом ReceiveNotification |
Пример тела ответа#
{
"result": true
}
Ошибки DeleteNotification#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Код HTTP | Идентификатор ошибки | Описание |
---|---|---|
400 | Parameter idInstance not an integer | Параметр idInstance не задан или содержит нецифровые символы |
400 | Parameter apiTokenInstance not define | Параметр apiTokenInstance не задан |
400 | Message cannot be received because custom webhook url is set. Go to cabinet, clear webhook url for instance: ХХХХХХХХХХ and wait for about 1 minute for another attempt | Поле webhookUrl не пустое. Очистите URL-адрес для инстанса ХХХХХХХХХХ и подождите около 1 минуты перед тем, как начать запрашивать уведомления. |
500 | Internal Server Error Parameter receiptId must be a Number! | Указанный receiptId не является числом |
500 | Internal Server Error Cannot read properties of undefined (reading 'findUnAckedMessage') | Не найдено сообщение, которое пытались удалить |
Примеры кода#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/deleteNotification/{{apiTokenInstance}}/1234567"
payload = {}
headers= {}
response = requests.request("DELETE", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
curl --location --request DELETE '{{apiUrl}}/waInstance{{idInstance}}/deleteNotification/{{apiTokenInstance}}/1234567'
var receiptId = 1;
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/deleteNotification/")
.append({{apiTokenInstance}})
.append("/").append(receiptId);
var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.DELETE, null, String.class);
System.out.println(response);
var receiptId = 1;
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/deleteNotification/")
.append({{apiTokenInstance}})
.append("/").append(receiptId);;
var response = Unirest.delete(requestUrl.toString())
.asString();
System.out.println(response);
Sub DeleteNotification()
Dim url 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}}/deleteNotification/{{apiTokenInstance}}/12345"
Set http = CreateObject("MSXML2.XMLHTTP")
http.Open "DELETE", url, False
http.Send
response = http.responseText
Debug.Print response
' Outputting the answer to the desired cell
' Range("A1").Value = response
Set http = Nothing
End Sub
Пример кода получения уведомлений на NodeJS можно посмотреть в файле ReceiveNotifications