diff --git a/core/__pycache__/api_views.cpython-311.pyc b/core/__pycache__/api_views.cpython-311.pyc index 5e92c52..4245aaf 100644 Binary files a/core/__pycache__/api_views.cpython-311.pyc and b/core/__pycache__/api_views.cpython-311.pyc differ diff --git a/core/__pycache__/urls.cpython-311.pyc b/core/__pycache__/urls.cpython-311.pyc index 82edf1b..ba30600 100644 Binary files a/core/__pycache__/urls.cpython-311.pyc and b/core/__pycache__/urls.cpython-311.pyc differ diff --git a/core/api_views.py b/core/api_views.py index b98de26..8f062f2 100644 --- a/core/api_views.py +++ b/core/api_views.py @@ -1,9 +1,20 @@ from rest_framework import viewsets, permissions, filters +from rest_framework.views import APIView +from rest_framework.response import Response from django_filters.rest_framework import DjangoFilterBackend from core.models import Bookmark, Team from core.serializers import BookmarkSerializer, BookmarkDetailSerializer, TeamSerializer from core.tasks import process_bookmark +class ApiStatusView(APIView): + permission_classes = [permissions.AllowAny] + + def get(self, request): + return Response({ + "status": "up", + "authenticated": request.user.is_authenticated + }) + class BookmarkViewSet(viewsets.ModelViewSet): permission_classes = [permissions.IsAuthenticated] filter_backends = [DjangoFilterBackend, filters.SearchFilter, filters.OrderingFilter] @@ -29,4 +40,4 @@ class TeamViewSet(viewsets.ModelViewSet): serializer_class = TeamSerializer def get_queryset(self): - return self.request.user.teams.all() + return self.request.user.teams.all() \ No newline at end of file diff --git a/core/urls.py b/core/urls.py index 1846784..6d3e16b 100644 --- a/core/urls.py +++ b/core/urls.py @@ -1,6 +1,6 @@ from django.urls import path, include from rest_framework.routers import DefaultRouter -from core.api_views import BookmarkViewSet, TeamViewSet +from core.api_views import BookmarkViewSet, TeamViewSet, ApiStatusView from core.views import ( BookmarkListView, BookmarkCreateView, BookmarkDetailView, BookmarkUpdateView, BookmarkDeleteView, @@ -22,5 +22,6 @@ urlpatterns = [ path("teams/", TeamListView.as_view(), name="team-list"), path("teams//", TeamDetailView.as_view(), name="team-detail"), + path("api/status/", ApiStatusView.as_view(), name="api-status"), path("api/", include(router.urls)), -] \ No newline at end of file +]