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

SendMediaStatus#

Бета-версия

Функциональность находится в режиме бета-версии. Функции могут быть изменены, а также могут работать нестабильно. В будущем за функционал может взиматься дополнительная плата.

Метод предназначен для отправки медиа-файлов. Статус будет добавлен в очередь на отправку. Статус на отправку хранится 24 часа в очереди и будет отправлено сразу же после авторизации телефона.
Скорость отправки статусов из очереди регулирует параметр Интервал отправки сообщений.

Важно

Чтобы получатель увидел статусы отправителя, обе стороны должны сохранить номера собеседников в список контактов

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

  • Рекомендуемый формат для аудио - MP3.

    Если аудио имеет длину более одной минуты, при отправке оно будет обрезано до одной минуты.

  • Рекомендуемый формат для видео - MP4.

    Если видео имеет длину более одной минуты, при отправке оно будет обрезано до одной минуты.

  • Рекомендуемое соотношение сторон для картинки 9:16 (вертикальная картинка)

Запрос#

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

POST {{apiUrl}}/waInstance{{idInstance}}/sendMediaStatus/{{apiTokenInstance}}

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

Протестировать

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

Параметр Тип Обязательный Описание
urlFile string Да Ссылка на отправляемый файл
fileName string Да Название файла. Должно содержать расширение файла. Требуется использовать кодировку UTF-8 без BOM. Например: test.jpg
caption string Нет Описание медиа статуса. Максимальная длина поля 1024 символов.
participants array<string> Нет Массив строк с идентификаторами контактов, которым будет доступен статус. Если значение поля пустое,"participants": [], статус будет доступен всем контактам

В случае добавления несуществующих номеров в поле participants статус не будет отправлен на эти номера

Пример тела запроса#

Отправка медиа статуса:

{
    "urlFile": "https://my.site.com/img/horse.png",
    "fileName": "horse.png",
    "caption": "Little horse",
    "participants": ["70000001234@c.us", "440000001234@c.us"] // статус будет доступен только указанным контактам
}

Ответ#

Поля ответа#

Поле Тип Описание
idMessage string Идентификатор отправленного сообщения

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

{
    "idMessage": "3EB0C767D097B7C7C030"
}

Ошибки SendMediaStatus#

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

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

import requests

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

payload = json.dumps({
"urlFile": "https://sw-media.storage. greenapi.net/1101000000/537157f6-4e24-4c4e-b5c6-9406c702f196.png",
"fileName": "horse.png",
"caption": "Little horse",
"participants": [
    "70000001234@c.us", 
    "440000001234@c.us"
]
})
headers = {
'Content-Type': 'application/json'
}

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

print(response.text)
curl --location '{{apiUrl}}/waInstance{{idInstance}}/sendMediaStatus/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "urlFile": "https://sw-media.storage. greenapi.net/1101000000/537157f6-4e24-4c4e-b5c6-9406c702f196.png",
    "fileName": "horse.png",
    "caption": "лошадка",
    "participants": [
    "70000001234@c.us", 
    "440000001234@c.us"
]
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/sendMediaStatus/")
    .append({{apiTokenInstance}});

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

var jsonBody = "{\r\n   \t\"urlFile\": \"https://sw-media.storage. greenapi.net/1101000000/537157f6-4e24-4c4e-b5c6-9406c702f196.png\",\r\n\t\"fileName\": \"horse.png\",\r\n\t\"caption\": \"little horse\",\r\n\t\"participants\": [\"70000001234@c.us\", \"440000001234@c.us\"]\r\n}";

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({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/sendMediaStatus/")
    .append({{apiTokenInstance}});

var response = Unirest.post(requestUrl.toString())
    .header("Content-Type", "application/json")
    .body("{\r\n   \t\"urlFile\": \"https://sw-media.storage. greenapi.net/1101000000/537157f6-4e24-4c4e-b5c6-9406c702f196.png\",\r\n\t\"fileName\": \"horse.png\",\r\n\t\"caption\": \"little horse\",\r\n\t\"participants\": [\"70000001234@c.us\", \"440000001234@c.us\"]\r\n}")
    .asString();

System.out.println(response);