Since version 0.9.1
The Vanty Starter Kit as a headless API for a separate Frontend like Vue or React you will need to extend the backend.
Please be aware that using Django as a headless API means you will be losing out on the majority of the logic in the Django views and templates.
The dj_rest_auth library is used to extend django-allauth to provide the following endpoints for managing the user registration and authentication flow.
The allauth library is already installed with five providers enabled. However, it only includes Django-based and not DRF API views. To use social auth you will need to add custom views for each provider.
For example to add social auth Facebook:
add a custom view
from allauth.socialaccount.providers.facebook.views import FacebookOAuth2Adapter
from dj_rest_auth.registration.views import SocialLoginView
class FacebookLogin(SocialLoginView):
adapter_class = FacebookOAuth2Adapter
add the url
urlpatterns += [
...,
path('dj-rest-auth/facebook/', FacebookLogin.as_view(), name='fb_login')
]
See the dj_rest_auth docs for adding connect views for social accounts.
This is enabled by default via the djangorestframework-simplejwt library. You can configure your preferences in config/settings/base.py
.
JWT_AUTH_COOKIE = 'my-app-auth'
JWT_AUTH_REFRESH_COOKIE = 'my-refresh-token'
REST_USE_JWT = True
You can also customise to suit your needs, for example change the claims attached to tokens.
The available endpoints depend on which apps are installed. See the full listing here.
The following apps are fully supported:
The payments are is not yet fully supported. The endpoints to be replicated are in apps.payments/views.py
. We plan on extending
You can also generate clients for pretty much every language out there. See the swagger codegen docs for more info.
Success
Error
Warning
Info