Большинство запросов к API нацелены на получение информации о состоянии радио, но в некоторых случаях есть необходимость:
- получить информацию, которая является не публичной, например, список диджеев на радио с паролями доступа
- внести изменения на сервере радио, например, добавить новый канал, сервер, создать плей-лист и так далее.
В таких случаях API потребует авторизацию при запросе. Наша платформа Интернет-радио поддерживает стандартный механизм авторизации для API: ключи, которыми вы можете управлять в разделе “Настройки” -> “API ключи” панели управления Интернет-радио.
В целом процесс выглядит следующим образом:
- в платформе заводится новый ключ API
- этот ключ указывается при выполнении запросов к API в заголовке HTTP
- API проверяет наличие ключа в запросе, проверяет его корректность и выполняет запрос если ключ валиден.
Обращаем внимание на то, что при работе с API ключами критически необходима работа по протоколу HTTPS, иначе API ключи могут быть скомпрометированы.
Пример использования ключа.
В разделе “Настройки” -> “API ключи” Панели Управления Интернет-радио был создан ключ: g0hsQEz6.JSXQWKby36Y1CefRA4JuUGKEg3ACY9wt. В Вашем случае необходимо самостоятельно перейти в этот раздел, завести собственный ключ и использовать его, в стате указанный ключ используется только для демонстрации и не будет работать с Вашим API!
Для демонстрации создадим на сервере с ID 1 случайный плей-лист с названием “Test Playlist”. Запрос выполняется методом POST по URL /api/v2/playlists/ :
import requests
payload = {
"name":"Test Playlist",
"is_random":True,
"server":1
}
headers = {"SC-API-KEY": "p6HLVit4.trl8xfTaFCGpdv74FO3YHNeUsBSDofDx"}
response = requests.post("https://demoaccount.s02.radio-tochka.com:8080/api/v2/playlists/", headers=headers, json=payload)Ключ передается в HTTP заголовке “SC-API-KEY”, если ключ оказался не правильным - ответ сервера будет содержать код HTTP 403 и описание ошибки в ответе.
Любой ключ можно отозвать, система позволяет создавать любое количество ключей и для каждого из них можно указать срок действия.