Skip to main content

Django rest framework hcaptcha field serializer.

Project description

Django REST hCAPTCHA

Django REST hCAPTCHA v2 and v3 field serializer

Code style: black PyPI PyPI - Downloads

Requirements

  • Python: 3.7, 3.8, 3.9, 3.10, 3.11
  • Django: 3.2, 4.0, 4.1, 4.2
  • DRF: 3.11, 3.12, 3.13, 3.14

Installation

  1. Install with pip install drf-hcaptcha
  2. Add "drf_hcaptcha" to your INSTALLED_APPS settings.
  3. Set in settings DRF_HCAPTCHA_SECRET_KEY
INSTALLED_APPS = [
   ...,
   "drf_hcaptcha",
   ...,
]

...

DRF_HCAPTCHA_SECRET_KEY = "YOUR SECRET KEY"

Usage

from rest_framework.serializers import Serializer
from drf_hcaptcha.fields import HCaptchaV2Field


class V2Serializer(Serializer):
    hcaptcha = HCaptchaV2Field()
    ...

Settings

DRF_HCAPTCHA_SECRET_KEY - set your hCAPTCHA secret key. Type: str.

DRF_HCAPTCHA_DEFAULT_V3_SCORE - by default: 0.5. Type: float.

DRF_HCAPTCHA_ACTION_V3_SCORES - by default: {}. Type: dict. You can define specific score for each action e.g. {"login": 0.6, "feedback": 0.3}

DRF_HCAPTCHA_DOMAIN - by default: api.hcaptcha.com. Type: str.

DRF_HCAPTCHA_PROXY - by default: {}. Type: dict. e.g. {'http': 'http://127.0.0.1:8000', 'https': 'https://127.0.0.1:8000'}

DRF_HCAPTCHA_VERIFY_REQUEST_TIMEOUT - by default: 10. Type: int.

Priority of secret_key value

  1. settings DRF_HCAPTCHA_SECRET_KEY
  2. the argument secret_key of field
  3. request.context["hcaptcha_secret_key"]

hCAPTCHA v3

Validation is passed if the score value returned by Google is greater than or equal to required score.

Required score value: 0.0 - 1.0

Priority of score value

If not defined or zero in current item then value from next item.

  1. Value for action in settings DRF_HCAPTCHA_ACTION_V3_SCORES
  2. Value in argument required_score of field
  3. Default value in settings DRF_HCAPTCHA_DEFAULT_V3_SCORE
  4. Default value 0.5

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

drf-hcaptcha-1.0.1.tar.gz (8.4 kB view details)

Uploaded Source

File details

Details for the file drf-hcaptcha-1.0.1.tar.gz.

File metadata

  • Download URL: drf-hcaptcha-1.0.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for drf-hcaptcha-1.0.1.tar.gz
Algorithm Hash digest
SHA256 039748c3f31d19f4a9be4c23ef07aebf02cc7a305a80fe8e9973bf260333ad12
MD5 bbc366abcf587feb04e280922a787d0d
BLAKE2b-256 3432151023195c0dae83a5c747779fca528583694f9ad199cead61cf0e22f702

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page