SetSettings#
Метод предназначен для установки настроек аккаунта.
При вызове данного метода аккаунт перезапускается.
Настройки применяются в течение 5 минут после вызова метода setSettings.
Запрос#
Для установки настроек аккаунта требуется выполнить запрос по адресу:
POST https://api.green-api.com/waInstance{{idInstance}}/setSettings/{{apiTokenInstance}}
Для получения параметров запроса idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Параметры запроса#
Допускается указывать параметры выборочно. Хотя бы один параметр должен быть указан.
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
webhookUrl | string | Нет | URL для отправки уведомлений. Если требуется отключить получение уведомлений, то укажите пустую строку. При получении уведомлений технологией HTTP API, поле должно быть пустым. Описание работы поля.. |
webhookUrlToken | string | Нет | Токен для доступа к вашему серверу уведомлений, если не требуется, то укажите пустую строку. Описание работы поля. |
delaySendMessagesMilliseconds | integer | Нет | Интервал отправки сообщений в миллисекундах. Минимальное значение 500 мсек |
markIncomingMessagesReaded | string | Нет | Отмечать входящие сообщения прочитанными или нет, возможные значения: yes , no . Игнорируется, если markIncomingMessagesReadedOnReply в значении 'yes'. |
markIncomingMessagesReadedOnReply | string | Нет | Отмечать входящие сообщения прочитанными при отправке сообщения в чат через API, возможные значения: yes , no . Если в значении 'yes', то настройка markIncomingMessagesReaded игнорируется. |
sharedSession | string | Нет | Не используется |
countryInstance | string | Нет | Не используется |
outgoingWebhook | string | Нет | Получать уведомления о статусах отправки/доставки/прочтении исходящих сообщений, возможные значения: yes , no . Статус noAccount отключить невозможно, необходимо обязательно реализовать обработку данного уведомления. |
outgoingMessageWebhook | string | Нет | Получать уведомления о сообщениях, отправленных с телефона, возможные значения: yes , no |
outgoingAPIMessageWebhook | string | Нет | Получать уведомления о сообщениях, отправленных через API, возможные значения: yes , no . При отправке сообщения на несуществующий аккаунт WhatsApp, уведомление не придет. |
stateWebhook | string | Нет | Получать уведомления об изменении состояния авторизации аккаунта, возможные значения: yes , no |
incomingWebhook | string | Нет | Получать уведомления о входящих сообщениях и файлах, возможные значения: yes , no |
deviceWebhook | string | Нет | Получать уведомления об устройстве (телефоне) и уровне заряда батареи, возможные значения: yes , no |
statusInstanceWebhook | string | Нет | Не используется |
enableMessagesHistory | string | Нет | Не используется |
keepOnlineStatus | string | Нет | Выставляет статус 'В сети' для вашего аккаунта |
Пример тела запроса общий#
{
"webhookUrl": "https://mysite.com/webhook/green-api/",
"webhookUrlToken": "",
"delaySendMessagesMilliseconds": 5000,
"markIncomingMessagesReaded": "no",
"markIncomingMessagesReadedOnReply": "no",
"outgoingWebhook": "yes",
"outgoingMessageWebhook": "yes",
"outgoingAPIMessageWebhook": "yes",
"incomingWebhook": "yes",
"deviceWebhook": "no",
"stateWebhook": "yes",
"keepOnlineStatus": "no"
}
Ответ#
Поля ответа#
Поле | Тип | Описание |
---|---|---|
saveSettings | boolean | Флаг, что настройки сохранены |
Пример тела ответа#
{
"saveSettings": true
}
Ошибки SetSettings#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Примеры кода#
import requests
url = "https://api.green-api.com/waInstance{{idInstance}}/setSettings/{{apiTokenInstance}}"
payload = "{\r\n\t\"webhookUrl\": \"https://mysite.ru\",\r\n\t\"delaySendMessagesMilliseconds\": 1000,\r\n\t\"markIncomingMessagesReaded\": \"no\",\r\n\t\"outgoingWebhook\": \"yes\",\r\n\t\"stateWebhook\": \"yes\",\r\n\t\"incomingWebhook\": \"yes\",\r\n\t\"deviceWebhook\": \"no\"\r\n}"
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text.encode('utf8'))
curl --location 'https://api.green-api.com/waInstance{{idInstance}}/setSettings/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data '{
"delaySendMessagesMilliseconds": 15000
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append("https://api.greenapi.com")
.append("/waInstance").append({{idInstance}})
.append("/setSettings/")
.append({{apiTokenInstance}});
var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
var jsonBody = "{\"delaySendMessagesMilliseconds\": 15000}";
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("https://api.greenapi.com")
.append("/waInstance").append({{idInstance}})
.append("/setSettings/")
.append({{apiTokenInstance}});
var response = Unirest.post(requestUrl.toString())
.header("Content-Type", "application/json")
.body("{\"delaySendMessagesMilliseconds\": 15000}")
.asString();
System.out.println(response);