Обучение rest api

Учебный центр R-Service
Управление услугами
Прогресс прохождения курса
33%

Упражнение 3. основы rest api

REST (Representational State Transfer) — это архитектурный стиль, в котором с помощью вызовов API можно получать данные (ресурсы) по определённому URL.

Каждый URL называется запросом, а данные, которые возвращаются, — ответом. Компоненты REST API-запроса:
  • URL (конечная точка)
  • HTTP-глаголы (методы)
  • Headers (заголовки)
  • Body (тело запроса)

URL состоит из корневой конечной точки и пути. Например:

Корневая конечная точка для демонстрационной среды R-Service: https://api.demo.rrtsm.ru

Путь определяет запрашиваемый ресурс, например, для доступа к рабочим процессам: https://api.demo.rrtsm.ru/v1/workflows

HTTP-глаголы определяют тип запроса, отправляемого на сервер:
  • GET — запрос на получение данных
  • POST — создание новых данных
  • PATCH — обновление данных
  • DELETE — удаление данных
Эти методы используются для операций CRUD (Create, Read, Update, Delete).

Доступ по протоколу HTTP
Каждый запрос к R-Service API требует два обязательных заголовка:

Authorization: Bearer <personal-access-token> — ваш личный токен доступа.

X-R-Service-Account: <accountID> — ID учетной записи, к которой нужен доступ.

Права доступа — Персональный токен доступа
Для безопасности интеграций вместо передачи пароля используется OAuth-токен. Это позволяет ограничить доступ только необходимыми данными. Вы можете получить OAuth-токен, сгенерировав его в профиле R-Service.

Что такое токены OAuth?
Вы не хотите передавать пароль пользователя R-Service приложению или уровню интеграции. В случае взлома в этом приложении или на уровне интеграции вы хотите, чтобы пароль R-Service оставался в безопасности. И вы хотите, чтобы интеграция имела доступ только к тем данным, которые действительно требуются, и не более того.

Вот тут в игру вступают токены OAuth. Вы не будете передавать данные пароля, но вместо этого будете передавать токены OAuth в своих интеграциях. На основе этих токенов OAuth и области действия, которую вы определяете для токена OAuth, вы разрешаете интеграции доступ к сервису R-Service без передачи вашего пароля. И вы можете точно указать, что интеграции разрешено создавать, считывать, обновлять и удалять.

Вы можете получить токен OAuth, либо сгенерировав токен личного доступа из моего профиля в R-Service, либо создав приложение OAuth из консоли настроек в R-Service.
В этом обучении вы будете использовать токен личного доступа.

Создание токена личного доступа
Теперь давайте создадим токен персонального доступа для Гаврюковой Елизаветы, который вы будете использовать в упражнениях. Для этого войдите под именем Гаврюковой Елизаветы в Центр обработки данных виджета и нажмите на аватар Елизаветы в правом верхнем углу. Выберите опцию «Мой профиль». Далее откройте раздел «Токены личного доступа». Нажмите на кнопку «Создать новый токен» или на знак «+» в строке заголовка, чтобы создать новый токен личного доступа.
Дайте вашему персональному токену доступа имя. Это имя должно быть осмысленным. В этом случае вы могли бы назвать свой персональный токен доступа «Токен для обучения интеграции».
Токен личного доступа содержит раздел областей, в котором вам нужно будет определить, к каким типам записей можно получить доступ. Нажмите на кнопку «Добавить типы записей» и проверьте список доступных типов записей.
Плохой практикой является предоставление большего количества прав доступа к токену личного доступа, чем необходимо. Обратите внимание, что токен личного доступа от Гаврюковой Елизаветы никогда не получит большего доступа, чем у нее есть. Поскольку Елизавета играет роль администратора пяти учетных записей R-Service, ее личный токен доступа может получить доступ к большинству типов записей в списке. Теперь вы можете сгенерировать свой токен. Справа от вновь сгенерированного токена у вас есть функция копирования.

Обязательно скопируйте свой новый токен личного доступа и сохраните его в текстовом файле или заметке. Вы не сможете снова увидеть токен и восстановить его позже.
Тело запроса
Тело (Body) используется в запросах POST, PATCH и DELETE для передачи данных на сервер. Эти данные форматируются в JSON, который является распространенным форматом для обмена данными через REST API.
Телефон
+7 (495) 231-73-64
E-mail
office@rr-th.com
Адрес
Москва, Цветной бульвар д. 26, стр. 1, офис 36
R-Service Логотип
© 2024 ООО "РР-ТЕХ"
Разработка российского программного обеспечения