Upload
Метод Upload
Примените этот метод для загрузки аудиофайла к приложению. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/media/v1/Upload
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
file | bytes (Base64) | аудиофайл (максимальный размер 5MB) |
full_name | string | имя файла |
file_type | enum FileType | тип аудиофайла |
Примечание
Загружаемый аудиофайл не должен превышать размер в 5MB
и название файла должно быть в формате MP3
или WAV
.
FileType
Параметр | Тип | Описание |
---|---|---|
FILE_TYPE_IVR | enum | IVR (интерактивное голосовое меню) |
FILE_TYPE_PREMEDIA | enum | премедиа (аудиосообщение, которое воспроизводится клиенту до ответа оператора) |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
file_id | uint64 | внутренний ID аудиофайла |
resource_id | uint64 | уникальный идентификатор ресурса загруженного аудиофайла |
size | uint64 | размер аудиофайла в байтах (не более 5MB) |
duration | uint32 | длительность аудиофайла в секундах |
name | string | имя файла |
extension | string | расширение aудиофайла (WAV или MP3) |
description | string | описание к аудиофайлу |
application_uuid | string | уникальный идентификатор приложения, к которому загружен аудиофайл |
file_type | enum FileType | тип аудиофайла |
date_upload | string | дата загрузки аудиофайла в формате RFC-3339 / ISO-8601 |
FileType
Параметр | Тип | Описание |
---|---|---|
200 | enum | IVR (интерактивное голосовое меню) |
201 | enum | премедиа (аудиосообщение, которое воспроизводится клиенту до ответа оператора) |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
404 | Not Found | неверный URL запроса | |
400 | Bad Request | failed to parse token | невалидный API-ключ |
403 | Forbidden | invalid token | невалидный API-ключ |
400 | Bad Request | error Save media service: fileName is exist | медиа файл с таким именем уже существует |
400 | Bad Request | invalid value for enum type: [value] | невалидное значение в поле FileType |
400 | Bad Request | unexpected token | одно из обязательных полей пустое |
400 | Bad Request | invalid UploadRequest.File: value length must be at least 1 bytes | не задано значение поля file |
400 | Bad Request | invalid UploadRequest.FullName: value length must be between 1 and 128 runes, inclusive | некорректно введено имя файла, поле full_name должно иметь от 1 до 128 символов |
400 | Bad Request | invalid value for string type: [value] | отсутствует значение поля full_name |
Примеры
Входные параметры:
{
"file": "SUQzAwAAAAAfdlRZRVIAAAAFAAAAMjAyMVRJVDIAAABHAAAB//4TBDgEQgQwBEAEMAQgADwENQQ7BD4ENAQ4BE8EIABABD4EO",
"file_type": "FILE_TYPE_PREMEDIA",
"full_name": "test.mp3"
}
Выходные параметры:
{
"file_id": "1931072746905665536",
"resource_id": "152817",
"size": "121087",
"duration": 5,
"name": "test",
"extension": "mp3",
"description": "",
"application_uuid": "178ec145-6898-4b06-a92a-75f63cb57046",
"file_type": 201,
"date_upload": "2023-06-14T16:53:40.459734572Z"
}