GetWaSettings#
Метод предназначен для получения информации об аккаунте WhatsApp*
Запрос#
Для получения информации об аккаунте WhatsApp* требуется выполнить запрос по адресу:
GET
{{apiUrl}}/waInstance{{idInstance}}/getWaSettings/{{apiTokenInstance}}
Для получения параметров запроса apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.
Ответ#
Поля ответа#
| Поле | Тип | Описание |
|---|---|---|
avatar | string | Ссылка на аватар аккаунта Whatsapp |
base64Avatar | string | Аватар в формате base64 |
chatId | string | lid текущего авторизованного аккаунта. Если инстанс не авторизован, поле возвращает пустую строку |
phone | string | Номер аккаунта Whatsapp |
historySyncProgress | integer | Процент выгрузки истории чатов на инстансе |
stateInstance | string | Состояние инстанса. Принимает значения: |
notAuthorized - Инстанс не авторизован. Для авторизации инстанса обратитесь к разделу Перед началом работы | ||
authorized - Инстанс авторизован | ||
blocked - Инстанс получил блокировку | ||
starting - Инстанс в процессе запуска (сервисный режим). Происходит перезагрузка инстанса, сервера или инстанс в режиме обслуживания. Может потребоваться до 5 минут для перевода состояния инстанса в значение authorized | ||
yellowCard - Статус устарел.Заменён на статус suspended | ||
suspendedВремя окончания ограничений указано в поле suspendedUntil (unix time) Подробнее о статусе suspended читайте в статье | ||
suspendedUntil | integer | Время окончания временных ограничений на аккаунте Поле присутствует при "stateInstance": "suspended" |
deviceId | string | Идентификатор устройства |
logoutProcess | boolean | Идентификатор процесса очистки данных на инстансе. Авторизация на инстансе невозможна. Дождитесь окончания процесса |
Если инстанс имеет статус
notAuthorized,blocked, илиstarting, поляavatar,chatId,phone,deviceIdбудут пустыми.
Пример тела ответа#
{
"stateInstance": "authorized",
"deviceId": "0123456789:26@s.whatsapp.net",
"chatId": "209723420885003@lid",
"phone": "0123456789",
"historySyncProgress": 100,
"logoutProcess": false,
"avatar": "https://pps.whatsapp.net/v/t61.24694-24/660127022_880709235049495_4189926396673003579_n.jpg?stp=dst-jpg_s96x96_tt6&ccb=11-4&oh=01_Q5Aa5AG58jAxnV_tH3wOd-goQFtqsjU3GTUY6P4ai3o4aGu7Wg&oe=6A6BEDDD&_nc_sid=5e03e0&_nc_cat=102",
"base64Avatar": "/9j/4AAQSkZJRgABAQAAAQABAAD/7QC...12Ff/Z"
}
Пример тела ответа в момент очистки данных на инстансе#
{
"stateInstance": "notAuthorized",
"logoutProcess": true,
"avatar": ""
}
Пример тела ответа со статусом suspended#
{
"stateInstance": "suspended",
"suspendedUntil": 1783406432,
"deviceId": "0123456789:26@s.whatsapp.net",
"chatId": "209723420885003@lid",
"phone": "0123456789",
"historySyncProgress": 100,
"logoutProcess": false,
"avatar": ""
}
Ошибки GetWaSettings#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Примеры кода#
import requests
#The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
url = "{{apiUrl}}/waInstance{{idInstance}}/getWaSettings/{{apiTokenInstance}}"
payload = {}
headers = {}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text.encode('utf8'))
<?php
//The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
$url = "{{apiUrl}}/waInstance{{idInstance}}/getWaSettings/{{apiTokenInstance}}";
$options = array(
'http' => array(
'header' => "Content-Type: application/json\r\n",
'method' => 'GET'
)
);
$context = stream_context_create($options);
$response = file_get_contents($url, false, $context);
echo $response;
?>
curl --location '{{apiUrl}}/waInstance{{idInstance}}/getWaSettings/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/getWaSettings/")
.append({{apiTokenInstance}});
var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, null, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/getWaSettings/")
.append({{apiTokenInstance}});
var response = Unirest.get(requestUrl.toString())
.header("Content-Type", "application/json")
.asString();
System.out.println(response);
Sub GetWaSettings()
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}}/getWaSettings/{{apiTokenInstance}}"
Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
http.Open "GET", 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
program GetWaSettings;
{$APPTYPE CONSOLE}
uses
System.SysUtils,
System.Classes, System.Net.HttpClient, System.Net.URLClient, System.Net.HttpClientComponent;
var
HttpClient: TNetHTTPClient;
RequestHeaders: TNetHeaders;
Response: IHTTPResponse;
EndpointURL, ID_INSTANCE, API_TOKEN_INSTANCE: string;
begin
ID_INSTANCE := '110100001';
API_TOKEN_INSTANCE := 'd75b3a66374942c5b3c019c698abc2067e151558acbd451234';
EndpointURL := 'https://api.green-api.com/waInstance' + ID_INSTANCE + '/getWaSettings/' + API_TOKEN_INSTANCE;
HttpClient := TNetHTTPClient.Create(nil);
RequestHeaders := [
TNetHeader.Create('Content-Type', 'application/json')
];
try
Response := HTTPClient.Get(EndpointURL, nil, RequestHeaders);
if Response.StatusCode = 200 then
Writeln('[Response]: ' + Response.ContentAsString)
else
Writeln('[ERROR ' + IntToStr(Response.StatusCode) + ']:' + Response.StatusText + '' + Response.ContentAsString);
readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
HttpClient.Free;
end.