Протестировать методы API можно на странице интерактивного обозревателя API и без написания кода
Некоторые ресурсы, описанные на странице, по умолчанию могут быть не доступны из-за типа приложения (см. Создание и авторизация приложений)
Content-Type при загрузке файлов |
Описание полей запроса
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
title | string | да | Название звукового файла |
file | file | да | Звуковой файл в формате wav или mp3. Максимальный размер файла – 10 мегабайт. |
В случае успешной загрузки файла возвращается ресурс "Звуковой файл", содержащий в том числе идентификатор звукового файла (поле id), который используется для указания звука в ресурсах очереди, голосового приветствия и т.п.
Загрузка звукового файла test_sound.wav c именем “Файл приветствия”.
[{"content":{"version":1,"type":"doc","content":[{"type":"codeBlock","attrs":{"language":"html"},"content":[{"type":"text","text":"Request URL: https://hostname.domain/api/ver1.0/client/@me/sound/\nRequest Method: POST\nAuthorization: Bearer token\nContent-Type: multipart/form-data; boundary=----WebKitFormBoundaryRJjeZXUAAoerF744\nHost: hostname.domain\n------WebKitFormBoundaryRJjeZXUAAoerF744\nContent-Disposition: form-data; name=\"file\"; filename=\"test_sound.wav\"\nContent-Type: audio/wav\n \n \n------WebKitFormBoundaryRJjeZXUAAoerF744\nContent-Disposition: form-data; name=\"title\"\n \nФайл приветствия\n------WebKitFormBoundaryRJjeZXUAAoerF744--"}]}]},"id":"5c4bc8bd-f7f6-483c-8bbf-5c370916dcd8","label":"HTTP-запрос ","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"В разделе "},{"type":"text","text":"authentication","marks":[{"type":"strong"}]},{"type":"text","text":" в поля "},{"type":"text","text":"client_id","marks":[{"type":"strong"}]},{"type":"text","text":" и "},{"type":"text","text":"client_secret","marks":[{"type":"strong"}]},{"type":"text","text":" требуется ввести полученные при регистрации приложения значения "},{"type":"text","text":"Application_ID","marks":[{"type":"strong"}]},{"type":"text","text":" и "},{"type":"text","text":"Application_Secret","marks":[{"type":"strong"}]},{"type":"text","text":", затем нажать на кнопку \""},{"type":"text","text":"Try it out!","marks":[{"type":"strong"}]},{"type":"text","text":"\". Если данные приложения верны, в ответ вернётся токен доступа ("},{"type":"text","text":"access_token","marks":[{"type":"strong"}]},{"type":"text","text":"). Полученный токен доступа следует ввести в поле \""},{"type":"text","text":"Access Token Field","marks":[{"type":"strong"}]},{"type":"text","text":"\" вверху страницы и сохранить его нажатием кнопки \""},{"type":"text","text":"Set Token","marks":[{"type":"strong"}]},{"type":"text","text":"\"."}]},{"type":"table","attrs":{"isNumberColumnEnabled":false,"layout":"default"},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"метод","marks":[{"type":"strong"}]}]}]},{"type":"tableHeader","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"ресурс","marks":[{"type":"strong"}]}]}]},{"type":"tableHeader","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"данные","marks":[{"type":"strong"}]}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"POST"}]}]},{"type":"tableCell","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"/client/@me/sound/"}]}]},{"type":"tableCell","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"{"},{"type":"hardBreak"},{"type":"text","text":"”file”: ”test_sound.wav“,"},{"type":"hardBreak"},{"type":"text","text":"”title”: “Файл приветствия“"},{"type":"hardBreak"},{"type":"text","text":"}"}]}]}]}]},{"type":"paragraph","content":[]}]},"id":"3d8179b5-d0e6-40ba-8eff-364f1c562289","label":"Интерактивный обозреватель API ","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"codeBlock","attrs":{"language":"shell"},"content":[{"type":"text","text":"Загрузка звука через cURL\nuser@host$ curl -i -X POST -F file=@test_sound.wav -F\"title=Файл приветствия\" -H\"Authorization: Bearer TSyAxXtAsbE9Kl0iAVGG6LmnfEte8X\" https://host.domain/api/ver1.0/client/@me/sound/\nHTTP/1.1 100 Continue\nHTTP/1.1 201 CREATED\nServer: nginx/1.8.0\nDate: Tue, 11 Aug 2015 09:50:41 GMT\nContent-Type: application/json\nContent-Length: 150\nConnection: keep-alive\nAccess-Control-Allow-Origin: *\nAccess-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS\nAccess-Control-Allow-Headers: Content-Type, api_key, Authorization\n{\"id\": 51, \"client_id\": 12, \"title\": \"Файл приветствия\", \"dealer_id\": null, \"filename\": \"test_sound.wav\"}"}]}]},"id":"f38dbd24-00e0-409c-b235-9f954cfffd00","label":"Программа cURL ","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"codeBlock","attrs":{"language":"python"},"content":[{"type":"text","text":"#!/usr/bin/python\n# -*- coding: utf-8 -*-\n \nimport requests\nimport json\n \n# Установка параметров\nAPI_HOST = \"https://hostname.domain\"\nAPP_ID = \"APP_ID\"\nAPP_SECRET = \"APP_SECRET\"\nREDIRECT_URI = \"\"\n \n# Получение авторизации\nbody = {\n 'grant_type': 'client_credentials',\n 'client_id': APP_ID,\n 'client_secret': APP_SECRET,\n}\n \nrequest_url = \"{host}/oauth/token\".format(host=API_HOST)\nresponse = requests.post(request_url, data=body, verify=False)\n \nif response.status_code == 200:\n # Получение токена доступа\n access_token = response.json()['access_token']\nelif response.status_code == 401:\n print 'Ошибка авторизации: {error}'.format(error=response.json()['error'])\n exit(1)\nelse:\n print 'Неизвестная ошибка'\n exit(2)\n \n# Установка заголовка авторизации\nheaders = {\n 'Authorization': 'Bearer {access_token}'.format(access_token=access_token) # Заголовок авторизации\n}\n \nfiles = {'file': open('test_sound.wav', 'rb')}\ndata = {'title': 'Файл приветствия'}\n \nrequest_url = \"{host}/api/ver1.0/client/@me/sound/\".format(host=API_HOST)\nresponse = requests.post(request_url, files=files, data=data, headers=headers)\nif response.status_code == 201:\n file_info = response.json()\n print file_info\nelse:\n print response.text"}]}]},"id":"f9c9c173-12bc-489c-b8f7-b2da9aacb27e","label":"На языке Python ","type":"tab"}] |
Получение всех доступных для использования клиенту или внутреннему номеру звуков осуществляется через соответствующий ресурс. Полученный список содержит информацию обо всех звуковых файлах, доступных для использования клиенту или внутреннему номеру, в том числе загруженных администратором или дилером клиента.
Описание полей
Параметр | Тип | Описание |
---|---|---|
id | integer | Идентификатор звукового файла |
title | string | Название звукового файла |
client_id | integer | Идентификатор клиента, владеющего звуковым файлом. Может иметь значение null, если звук не принадлежит клиенту |
dealer_id | integer | Идентификатор дилера, владеющего звуковым файлом. Может иметь значение null, если звук не принадлежит дилеру клиента |
filename | string | Системное имя файла, которое может быть использовано, в частности, для проигрывания звука через функцию голосового меню “Call Interactive” |
POST /client/{client_id}/sound/ Добавить звуковой файл Параметры URL
Параметры запроса
Поля ответа
|
GET /client/{client_id}/sound/ Получить список доступных клиенту звуковых файлов Параметры запроса
Поля ответа
|
POST /client/{client_id}/sound/{sound_id} Заменить контент звукового файла Параметры URL
Параметры Запроса
Поля ответа
|
PUT /client/{client_id}/sound/{sound_id} Обновить информацию о звуковом файле Параметры URL
Параметры JSON
Поля ответа
|
GET /client/{client_id}/sound/{sound_id} Получить информацию о звуковом файле Параметры URL
Поля ответа
|
DELETE /client/{client_id}/sound/{sound_id} Удалить звуковой файл Параметры URL
|
GET /client/{client_id}/sound/{sound_id}/download/ Получить звуковой файл Параметры URL
|
GET /extension/{extension_id}/sound/ Получить список доступных внутреннему номеру звуковых файлов Параметры URL
Параметры запроса
Поля ответа
|
GET /extension/{extension_id}/sound/{sound_id}/download/ Получить звуковой файл Параметры URL
|