--- id: django-signal-webhooks version: "0.3.1" license: MIT license_treatment: permissive maintenance: active --- # django-signal-webhooks — Add webhooks to django using signals. License: permissive · Maintenance: active · Downloads: 124.1K/mo ## What it is and what it does Django Signal Webhooks bridges Django model lifecycle events (create, update, delete) to external HTTP endpoints by hooking into Django's signal system. It lets you define which models should trigger webhooks and manage them through Django's admin interface, with optional authentication and customization hooks throughout the sending process. The package handles the mechanics of serializing model changes, constructing HTTP requests via httpx, and delivering payloads to registered webhook URLs. It relies on cryptography for secure operations and django-settings-holder for configuration management. You configure webhooks declaratively in settings and then manage individual webhook registrations (URLs, authentication, active/inactive state) through the admin panel without code changes. Use it for: - Notify external systems (CRM, analytics, logging) when Django models change without tight coupling. - Trigger downstream workflows in microservices when user or order records are created or updated. - Implement audit trails or event streaming by sending model mutations to a dedicated event service. - Sync data between Django and third-party SaaS platforms on model changes. - Build real-time integrations where external tools need to react to Django application events. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Adds webhook support to Django models by automatically triggering HTTP callbacks on create, update, and delete events via Django signals, configurable through the admin panel. Yes, if you need to emit webhooks from Django model events and want a low-friction, admin-friendly solution. The package is actively maintained, has no known vulnerabilities, uses permissive licensing, and integrates cleanly with Django 4.2+. Install only if your project already uses Django and you need outbound webhooks; it adds a small dependency footprint and is straightforward to configure. ## Install pip install django-signal-webhooks uv add django-signal-webhooks poetry add django-signal-webhooks ## Installing django-signal-webhooks Before you install: Low friction: pure Python wheel with six runtime dependencies (Django, asgiref, httpx, cryptography, django-settings-holder, typing-extensions). Active maintenance with recent commits; last release 652 days ago but repo shows current activity. License in practice: MIT license (permissive) places no restrictions on use, modification, or distribution in proprietary or open-source projects. Quickstart: pip install django-signal-webhooks # In project/settings.py INSTALLED_APPS = [ ... "signal_webhooks", ] SIGNAL_WEBHOOKS = { "HOOKS": { "django.contrib.auth.models.User": {}, }, } Requires Django 4.2, 5.0, or 5.1; Python 3.9 or later. Verify before relying: - Whether webhook retry logic, rate limiting, or failure handling are built-in or require custom implementation. - Whether the package supports webhook signing/verification beyond basic authentication. - Performance characteristics when handling many concurrent webhook deliveries. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 124.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags django webhooks signals, django model event webhooks, django create update delete hooks, django admin webhooks, django outbound webhooks, django event notifications http, django signal-based webhooks, django-integration, event-driven, webhooks [View on SkillFed](https://skillfed.io/packages/django-signal-webhooks) · [View on PyPI](https://pypi.org/project/django-signal-webhooks/)