Подключение к внешнему REST API

Материал из SmartPlayer

Описание ситуации

Для пользователей, которые хотят подключиться по REST API есть возможность сделать это используя наш отдельный ресурс. На этом ресурсе пользователь ознакомиться с методами и типами запросов, которые позволят ему подключиться и получать данные от платформы SmartPlayer.

Портал с поддержкой REST API расположен здесь. Запросить данные для авторизации (логин и пароль) можно связавшись с нами через портал или прикрепленному специалисту компании SmartPlayer. Также можно написать на эту почту

Работа портала

Данный раздел построен на базе Swagger Plugin и позволяет не только ознакомиться с информацией для подключения по REST API, но и опробовать описанные методы, получая реальный результат. Также технически продвинутые пользователи могут протестировать описанные методы используя Postman, если он является более привычным инструментом.

Некоторые методы описанные на портале могут отрабатывать некорректно. Команда SmartPlayer знает о проблемах и находится в процессе их устранения.

Сценарий использования

Предполагается что взаимодействие с порталом будет происходить в определённой последовательности. Сценарий предполагаемого использования:

  1. Авторизация на портале.
  2. Выбор нужного сервера для тестирования запросов.
  3. Получение токена для использования кнопки "Authorize".
  4. Выбор нужного метода и изучение информации о нём.
  5. По кнопке "Try it out" отправка запроса.
  6. Получение и просмотр ответа от сервера.
  7. Изучение раздела "Schemas".
Описанные действия будет подробнее описаны ниже на странице.

Информация на портале

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

Пример отображения главной страницы портала с REST API

На странице портала отображается информация о:

  • контактной информации с командой SmartPlayer;
  • списке доступных для тестирования серверов;
  • кнопка "Atuhorize" (подробнее о работе с кнопкой ниже на странице)
  • список методов;
  • раздел "Schemas" (нужно пролистать страницу вниз до конца)
Пример отображения наполнения страницы портала
Пример отображения раздела "Schemas" в нижней части экрана

Выбор сервера

Для тестирования запросов с методами пользователю необходимо выбрать один из представленных в списке методов. Каждый сервер из списка имеет формат отображения: "название" + "краткое описание" (на английском языке).

Пример отображения списка доступных серверов
Представленный список серверов не окончательный. Пользователь может с помощью Postman вручную сам подключиться к любому представленному из списка серверу, а также использовать другие сервера. Например, "rc.smartplayer.org".

Кнопка "Atuhorize"

При нажатии на кнопку "Authorize" пользователю откроется модальное окно с описанием и полем, в котором необходимо указана токен (bearer token) для авторизации. Чтобы получить данный токен можно прочитать инструкцию приложенную по ссылке в окне.

Пример отображения модального окна для кнопки "Authorize"

После введения токена авторизации необходимо нажать на кнопку "Close". Это вернёт пользователя на главную страницу, а также поменяет отображения иконки авторизации (выглядит как замок). Иконка будет подсвечена, а замок будет закрыт.

Пример отображения изменения иконки авторизации
При наведение на иконку авторизации интерфейс добавит еще одну иконку, которая позволит скопировать запрос в буфер обмена.
Пример отображения иконки копирования запроса в буфер обмена

Информация о методах

На данный момент на портале представлено два вида методов:

  1. GET — используется для получения данных. Его параметры передаются в URL-ссылке. Метод безопасен (идемпотентен) и кэшируется.
  2. POST — отправляет данные в теле запроса. Используется для создания ил изменения ресурсов. Безопасен для конфиденциальной информации
Пример отображения методов GET и POST на странице

Все методы представленные в списке имеют свою конечную точку пути (endpoint), который прописан после названия типа метода и выделяется жирным шрифтом.

Пример отображения конечной точки метода (endpoint)

Взаимодействие с методами

Области работы методов

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

  • авторизация (Authorization);
  • трансляции (Broadcast);
  • контент (Content);
  • оповещения (Notifications);
  • IP-телевидение (IP-TV);
  • пользователь (User);
  • настройки (Settings);
  • расписания (Schedule);
  • устройства (Устройства)
Пример отображения списка доступных методов
Каждый из методов имеет небольшое описание на английском идущие после обозначения.
Пример отображения описания метода

Список методов

Ниже будет представлен список методов с переводом краткого описания в порядке описанном ранее:

  • Авторизация:
    • Вход в серверное приложение.
Пример отображения доступного метода для авторизации
  • Трансляции:
    • Импортировать трансляцию.
    • Отправьте событие для изменения страницы трансляции.
    • Получить все трансляции для компании пользователя.
    • Получить трансляцию по ID.
    • Получить трансляцию по заголовку.
Пример отображения доступных методов для трансляций
  • Контент:
    • Загрузить файл.
    • Загрузка нескольких файлов.
    • Загрузка файла в видеоредактор.
    • Загрузка файлов.
Пример отображения доступных методов для контента
  • Оповещения:
    • Загрузка истории действий пользователей.
Пример отображения доступного метода для оповещений
  • IP-телевидение:
    • Экспортировать CSV-файлы для IPTV.
    • Импортировать CSV-файлы в IPTV.
Пример отображения доступных методов для IP-телевидения
  • Пользователь:
    • Обновление фотографии пользователя.
    • Создать нового пользователя.
    • Отправить ссылку для сброса пароля.
Пример отображения доступных методов с информациях о пользователях
  • Настройки:
    • Загрузить шрифт.
Пример отображения доступного метода для настроек
  • Расписания:
    • Экспортировать расписание в архиве
Пример отображения доступного метода для расписаний
  • Устройства:
Пример отображения доступного метода для устройств

Схемы (Schemas)

Взаимодействие через Postman

Видеоинструкция

Подключение к внешнему REST API

Дополнительная информация

Если данная статья не помогает использовать функционал по назначению или после её прочтения остаются вопросы, их можно задать в разделе "Обсуждения" вверху страницы.

Пример отображения вкладки "Обсуждения" на wiki-странице

Найти дополнительную информацию можно на странице Как взаимодействовать пользователю с разделом "Обсуждения"