You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

61 lines
3.1 KiB

#REST API
##Авторизация
HTTP заголовок: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
Токен возвращается в ответ на `/auth`
##Статус коды ответов
Успех: 2ХХ Ошибка сервера: 5ХХ Ошибка входящего запроса (включая ошибки бизнес-логики): 4ХХ В ответе возвращается тип ошибки {"error": "E_VALIDATION"}
##Общие ошибки:
* E_VALIDATION Ошибка входящих параметров
* E_SESSION_EXPIRED Сессия истекла, пользователя нужно направить на форму авторизации
* E_TOKEN Неправильно сформирован токен
* E_AUTH Неправильный логин или пароль
* E_NOT_FOUND Сущность не найдена
* E_ACCESS Не достаточно прав для просмотра
##Формат ответа
Ответ от сервера возвращается в JSON. Значение null описывает не установленное значение имеющегося поле. В UI должно выводиться как «Не установлено», прочерк и тп, в инпутах каститься в пустую строку
##Работа с файлами
Работа с файлами происходит единообразно в данных формы (multipart/form-data):
* загрузка/обновление: POST/PUT {param: text, ..., file: file}
* удаление: PUT {param: text, ..., file: ''}
* обновление без изменения файла: PUT {param: text, ...}
## CRUD endpoints
Каждая из сущностей, представленных ниже, имеет стандартные точки доступа:
* `GET /entity` Получить список всех сущностей
* `POST /entity` Добавить новую сущность
* `GET /entity/:id` Получить подробную информацию о сущности
* `PUT /entity/:id` Обновить информацию
* `DELETE /entity/:id` Удалить сущность
### User
Управление пользователями
### Course
Управление курсами
### Lesson
Управление уроками курсов. Является вложенной сущностью от Course
### Payment, AuthorBalance
Получение информации об оплатах и управление запросами на вывод
### Comment
Управление комментариями(модерирование)
### Category
Управление справочником категорий курсов
### Subscription
Управление подписками и рассылками пользователям
_Форматы запросов и ответов будут подробно описываться с помощью автоматической документации Swagger Documentation Generator for Django REST Framework_