Getting started

Available endpoints

  • /users/

  • /users/me/

  • /users/confirm/

  • /users/resend_activation/

  • /users/set_password/

  • /users/reset_password/

  • /users/reset_password_confirm/

  • /users/set_username/

  • /users/reset_username/

  • /users/reset_username_confirm/

  • /token/login/ (Token Based Authentication)

  • /token/logout/ (Token Based Authentication)

  • /jwt/create/ (JSON Web Token Authentication)

  • /jwt/refresh/ (JSON Web Token Authentication)

  • /jwt/verify/ (JSON Web Token Authentication)

Supported authentication backends

Supported Python / Django / DRF versions

We aim to always support the latest version. For older ones, check pyproject.toml classifiers section or the test matrix.

Installation

$ pip install -U djoser

If you are going to use JWT authentication, you will also need to install djangorestframework_simplejwt with:

$ pip install -U djangorestframework_simplejwt

Finally if you are going to use third party based authentication e.g. facebook, you will need to install social-auth-app-django with:

$ pip install -U social-auth-app-django

Configuration

Configure INSTALLED_APPS:

INSTALLED_APPS = (
    'django.contrib.auth',
    (...),
    'rest_framework',
    'djoser',
    (...),
)

Configure urls.py:

urlpatterns = [
    (...),
    url(r'^auth/', include('djoser.urls')),
]

HTTP Basic Auth strategy is assumed by default as Django Rest Framework does it. We strongly discourage and do not provide any explicit support for basic auth. You should customize your authentication backend as described in Authentication Backends.

In case of third party based authentication PSA backend docs will be a great reference to configure given provider.