An extension of django rest framework that allows to invite user via email
Project description
Django Rest User Invitation
The primary aim of this python package is to provides a simple user invitation strategy for django rest framework, where users can be invited using invitation tokens (by sending email to the provided e-mail address).
This package provides a REST endpoint that verifies an token and set the password for that particular user.
Quick Start
- Install the package from pypi using pip:
pip install drf-simple-invite
- Add
drf_simple_inviteto yourINSTALLED_APPS(afterrest_framework) within your Django settings file:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# Third party apps
'rest_framework', # utilities for rest apis
'rest_framework.authtoken', # token
# Simple Invite
'drf_simple_invite',
# Custom User Model
'users',
]
- This package provides an endpoint, which can be included by including
drf_simple_invite.urlsin yoururls.pyas follows:
from django.urls import re_path as url, include
urlpatterns = [
url(r'api/v1/invite/', include('drf_simple_invite.urls', namespace='drf_simple_invite')),
]
Note: You can adapt the api-url to your needs.
Endpoints
The following endpoints are provided:
POST ${API_URL}/- invite the user by sending the email as parameterPOST ${API_URL}/{invitation_token}- set password token by using theinvitation_tokenparameter
where ${API_URL}/ is the url specified in your urls.py (e.g., api/v1/invite/)
and {invitation_token} is base64.urlsafe encoded uuid token. Since it is unsafe to use plain uuid, always make sure that the {invitation_token} is base64.urlsafe encoded
Signals
invitation_token_created- Fired when a reset password token is generatedpre_password_creation- fired just before a password is being setpost_password_creation- fired after a password has been set
TODO: Configuration / Settings / Management Command
The following settings can be set in Django settings.py file:
DJANGO_REST_INVITATION_TOKEN_EXPIRY_TIME- time in hours about how long the token is active (Default: 24)
Please note: expired tokens are automatically cleared based on this setting in every call of post method on this endpoint.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file drf_simple_invite-0.3.0.tar.gz.
File metadata
- Download URL: drf_simple_invite-0.3.0.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d35f29407ac148decc53061b511a97f7aca559a2096e00c273b9ea05d29e65cb
|
|
| MD5 |
0ac3a21176a908cdc63d0cd7f4459a59
|
|
| BLAKE2b-256 |
6351912a1efe69bbdcf27db3102e64f72a0f71d0537c5d565f3b3166725fbda6
|
File details
Details for the file drf_simple_invite-0.3.0-py3-none-any.whl.
File metadata
- Download URL: drf_simple_invite-0.3.0-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7fa352164638df5a44b02acc2cc25ffb1a969d0d099839c679cc1b8afee699d3
|
|
| MD5 |
4b48a93817a5e249cee2ac87d5fcb654
|
|
| BLAKE2b-256 |
01433b2e1678cc819184f61f61484a2e52004c5c779b253bf90fa2a0cbdcc7c8
|