GetAccountSettings#
Метод предназначен для получения информации об аккаунте мессенджера MAX.
Для метода используются ограничения на частоту запросов в секунду.
Запрос#
Для получения информации об аккаунте мессендежра MAX требуется выполнить запрос по адресу:
GET
{{apiUrl}}/v3/waInstance{{idInstance}}/getAccountSettings/{{apiTokenInstance}} Для получения параметров запроса apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.
Ответ#
Поля ответа#
| Поле | Тип | Описание |
|---|---|---|
avatar | string | Ссылка на аватар аккаунта мессенджера MAX При статусах notAuthorized,blocked или starting будет пустым |
phone | string | Номер аккаунта мессенджера MAX При статусах notAuthorized,blocked или starting будет пустым |
stateInstance | string | Состояние инстанса. Принимает значения: |
notAuthorizedДля авторизации инстанса обратитесь к разделу Перед началом работы | ||
authorized | ||
blocked | ||
startingПроисходит перезагрузка инстанса, сервера или инстанс в режиме обслуживания Может потребоваться до 5 минут для перевода состояния инстанса в значение authorized | ||
suspendedВремя окончания ограничений указано в поле suspendedUntil (unix time) Подробнее о статусе suspended читайте в статье | ||
chatId | string | Идентификатор личного чата мессенджера MAX Может использоваться для отправки сообщений самому себе, или передачи другим пользователям для получения сообщений При статусах notAuthorized,blocked или starting будет пустым |
suspendedUntil | integer | Время окончания временных ограничений на аккаунте Поле присутствует при "stateInstance": "suspended" |
historySyncProgress | integer | Процент выгрузки истории чатов на инстансе |
При статусе
suspendedотправка сообщений возможна только на номера, сохранённые в контакты.
При отправке на номер, не сохранённый в контактах, будет получена ошибка 403 с описаниемYour account is suspended.
Пример тела ответа#
{ "avatar": "https://i.oneme.ru/i?r=BTE2sh_eZW7g8kugOdIm2NotBPGJiDHPpKQP3fE_vh2BE1holGE_adbUwUqCIPQgiOI", "phone": "79991234567", "stateInstance": "authorized", "chatId": "10000000", "historySyncProgress": 100 } Ошибки GetAccountSettings#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Примеры кода#
import requests #The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed url = "{{apiUrl}}/v3/waInstance{{idInstance}}/getAccountSettings/{{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}}/v3/waInstance{{idInstance}}/getAccountSettings/{{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}}/v3/waInstance{{idInstance}}/getAccountSettings/{{apiTokenInstance}}' var restTemplate = new RestTemplate(); var requestUrl = new StringBuilder(); requestUrl .append({{apiUrl}}) .append("/v3/waInstance").append({{idInstance}}) .append("/getAccountSettings/") .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("/v3/waInstance").append({{idInstance}}) .append("/getAccountSettings/") .append({{apiTokenInstance}}); var response = Unirest.get(requestUrl.toString()) .header("Content-Type", "application/json") .asString(); System.out.println(response); Sub GetAccountSettings() 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}}/v3/waInstance{{idInstance}}/getAccountSettings/{{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 GetAccountSettings; {$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/v3/waInstance' + ID_INSTANCE + '/getAccountSettings/' + 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.