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

SetProfilePicture#

Test Postman Apidog

Метод предназначен для установки аватара аккаунта.

Для метода используются ограничения на частоту запросов в секунду.

Запрос#

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

POST
{{apiUrl}}/v3/waInstance{{idInstance}}/setProfilePicture/{{apiTokenInstance}}

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

Параметры запроса#

Параметр Тип Обязательный Описание
file file Да Отправляемый файл в формате *.jpg

Ответ#

Поля ответа#

Поле Тип Описание
reason string Причина почему аватар не был установлен
urlAvatar string url установленного аватара
setProfilePicture boolean флаг результата установки аватара

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

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

{
    "reason": null,
    "urlAvatar": "https://i.oneme.ru/i?r=BTE2sh_eZW7g8kugOdIm2NotBPGJiDHPpKQP3fE_vh2BE1holGE_adbUwUqCIPQgiOI",
    "setProfilePicture": true
}

Выполнение метода с ошибкой#

status code 400

    "File is empty"

Ошибки SetProfilePicture#

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

Код HTTP Идентификатор ошибки Описание
200 rate-overlimit Рекомендуется вызывать метод SetProfilePicture не чаще 1 раза в 10 секунд, так как существует ограничение со стороны серверов MAX. Ограничение на количество запросов также указано в таблице
400 File is empty Пустой файл
400 Unsupported media type Неподдерживаемый формат файла

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

import requests

url = "{{apiUrl}}/v3/waInstance{{idInstance}}/setProfilePicture/{{apiTokenInstance}}"

payload={}
files=[
  ('file',('{{file}}.jpeg',open('/C:/{{file}}.jpeg','rb'),'image/jpeg'))
]
headers = {}

response = requests.post(url, json=payload, files=files)

print(response.text)
curl --location '{{apiUrl}}/v3/waInstance{{idInstance}}/setProfilePicture/{{apiTokenInstance}}' \
--form 'file=@"Users/path/to/file"'
var file = new File("Users/path/to/file");
var restTemplate = new RestTemplate();

var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/v3/waInstance").append({{idInstance}})
    .append("/setProfilePicture/")
    .append({{apiTokenInstance}});

var headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);

var form = new LinkedMultiValueMap<>();
form.add("file", new FileSystemResource(file));

var requestEntity = new HttpEntity<>(form, headers);

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.POST, requestEntity, String.class);
System.out.println(response);
var file = new File("Users/path/to/file");
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/v3/waInstance").append({{idInstance}})
    .append("/setProfilePicture/")
    .append({{apiTokenInstance}});

var response = Unirest.post(requestUrl.toString())
    .field("file", file, Files.probeContentType(file.toPath()))
    .asString();

System.out.println(response);