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

ClearWebhooksQueue#

Метод предназначен для очистки входящей очереди уведомлений. Уведомление хранится в очереди 24 часа и будет отправлено после настройки webhookUrl на авторизованном инстансе. Скорость отправки уведомлений зависит от скорости ответа на запросы вебхук-сервера GREEN-API или от скорости вычитывания уведомлений методами HTTP API.

Выполнение метода доступно на инстансе не чаще чем 1 раз в 1 минуту, при более раннем запросе метода в ответе Вы получите описание причины reason: "Too many requests" и оставшееся время до успешного выполнения метода leftTime в секундах.

Запрос#

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

DELETE {{apiUrl}}/waInstance{{idInstance}}/clearWebhooksQueue/{{apiTokenInstance}}

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

Ответ#

Поля ответа#

Поле Тип Описание
isCleared boolean Флаг очистки очереди уведомлений
reason string Описание ошибки:
"Too many requests" - метод не готов к выполнению (выполнение метода доступно не чаще чем 1 раз в 1 минуту)
leftTime int Оставшееся время до разрешения выполнения следующего запроса на очистку очереди (поле присутствует в ответе только при isCleared: false)

Пример тела ответа#

Успешное выполнение метода#

status code 200

{
    "isCleared": true,
    "reason": ""
}

Успешное выполнение метода, но время между запросами еще не вышло#

status code 200

{
    "isCleared": false,
    "reason": "Too many requests",
    "leftTime": 46
}

Успешное выполнение метода, но система не смогла обработать запрос#

status code 200

{
    "isCleared": false,
    "reason": "Error description"
}

Ошибки ClearWebhooksQueue#

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

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

import requests

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

payload = {}
headers= {}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
curl --location --request DELETE '{{apiUrl}}/waInstance{{idInstance}}/clearWebhooksQueue/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/clearWebhooksQueue/")
    .append({{apiTokenInstance}});

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

var response = Unirest.delete(requestUrl.toString())
    .header("Content-Type", "application/json")
    .asString();

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

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

    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