Skip to content

Проект YaMDb собирает отзывы пользователей на различные произведения

License

Notifications You must be signed in to change notification settings

26remph/api_yamdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Документация к API проекта YAMDB

Проект YaMDb собирает отзывы пользователей на различные произведения

(version 1.0)


DjangoREST Django SQLite

GitHub code size in bytes GitHub repo size GitHub pythonversion

Оглавление

  1. Описание
  2. Стек технологий
  3. Как запустить проект
  4. Документация по api
  5. Примеры запросов к api
  6. Авторы проекта

Описание

Проект YaMDb собирает отзывы пользователей на произведения. Произведения делятся на категории: «Книги», «Фильмы», «Музыка». Произведению может быть присвоен жанр. Новые жанры может создавать только администратор. Читатели оставляют к произведениям текстовые отзывы и выставляют произведению рейтинг (оценку в диапазоне от одного до десяти). Из множества оценок автоматически высчитывается средняя оценка произведения.

Стек технологий

  • проект написан на Python с использованием Django REST Framework
  • библиотека Simple JWT - работа с JWT-токеном
  • библиотека django-filter - фильтрация запросов
  • базы данны - SQLite3
  • система управления версиями - git

Как запустить проект:

  • Клонировать репозиторий и перейти в него в командной строке:
git clone https://github.com/26remph/api_yamdb.git
cd api_yamdb
  • Cоздать и активировать виртуальное окружение:
python3 -m venv env
source env/bin/activate
  • Установить зависимости из файла requirements.txt:
python3 -m pip install --upgrade pip
pip install -r requirements.txt
  • Выполнить миграции:
python3 manage.py migrate
  • Запустить проект:
python3 manage.py runserver

Ознакомиться с документацией по адресу. http://127.0.0.1:8000/redoc/

Документация по api

Алгоритм получения токена:

1. Получить код подтвержения.

в теле передать JSON { "username": "имя_пользователя", "email": "адрес эл. почты" } POST-запрос на эндпоинт:

http://127.0.0.1:8000/api/v1/auth/signup/

в папке sent_emails найти письмо и скопировать полученный код подтверждения.

2. Получить токен.

в теле передать JSON { "username": "имя_пользователя", "confirmation_code": "код_подтвержения" } POST-запрос на эндпоинт:

http://127.0.0.1:8000/api/v1/auth/token/

Токен использовать для авторизации

Примеры запросов к api

Некоторые примеры запросов к API.

Доступные энд-поинты: GET-запросы

/api/v1/users/
/api/v1/titles/
/api/v1/categories/
/api/v1/genres/
/api/v1/titles/{title_id}/reviews/
/api/v1/titles/{title_id}/reviews/{review_id}/comments/

Авторы проекта

Вадим Барсуков, python-developer
Денис Мурашов, python-developer
Юра Ананьин, python-developer


© 2022, Contributors on git: 26Remph, viplod, okazivaetsya. ツ

About

Проект YaMDb собирает отзывы пользователей на различные произведения

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published