Skip to content

mShono/api_final_yatube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

api_final

Наш основной проект yatubeпредставляет собой социальную сеть для публикации личных дневников. Это сайт, на котором пользователь может создать свою страницу и публиковать на ней сообщения («посты»). Проект api_final позволяет получать информацию из проекта yatube с помощю API.

У неаутентифицированных пользователей доступ к API есть только на чтение. Исключение — эндпоинт /follow/: доступ к нему предоставляется только аутентифицированным пользователям. Аутентифицированные пользователи могут измененять и удалять свой контент. В остальных случаях доступ предоставляется только для чтения.

Через API нельзядобавить новых пользователей.

Проект реализован на Django Rest Framework.

Подготовка проекта api_final к запуску:

  1. Проверьте, что виртуальное окружение развёрнуто и активировано, зависимости проекта установлены.
  2. Установите все необходимые пакеты из requirements.txt.
  3. Выполните миграции.
  4. Перейдите в директорию с файлом manage.py и запустите сервер.

При работе с проектом доступны такие эндпоинты:

  1. api/v1/posts/ (GET, POST): получаем список всех постов или создаём новый пост. Пример POST-запроса: { "text": "string", "image": "string", "group": 0 }
  2. api/v1/posts/{post_id}/ (GET, PUT, PATCH, DELETE): получаем, редактируем или удаляем пост с идентификатором{post_id}.
  3. api/v1/groups/ (GET): получаем список всех сообществ.
  4. api/v1/groups/{group_id}/ (GET): получаем информацию о сообществе с идентификатором {group_id}.
  5. api/v1/posts/{post_id}/comments/ (GET): получаем список всех комментариев поста с идентификатором {post_id} (POST): создаём новый комментарий для поста с идентификатором {post_id}. Пример: { "text": "string" }
  6. api/v1/posts/{post_id}/comments/{comment_id}/ (GET, PUT, PATCH, DELETE): получаем, редактируем или удаляем комментарий с идентификатором {comment_id} в посте с идентификатором {post_id}.
  7. api/v1/follow/ (GET): Возвращает все подписки пользователя, сделавшего запрос. Анонимные запросы запрещены. (POST): Подписка пользователя от имени которого сделан запрос на пользователя переданного в теле запроса. Анонимные запросы запрещены. Пример: { "following": "string" }
  8. api/v1/jwt/create/ (POST): Передаём логин и пароль, получаем токен. Пример: { "username": "string", "password": "string" }
  9. api/v1/jwt/refresh/ (POST): Обновление токена. Пример: { "refresh": "string" }
  10. api/v1/jwt/verify/ (POST): Проверка токена. Пример: { "token": "string" }

About

api final yatube

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors